Gwylim Ashley is a software engineer at Alloy, working out of our Vancouver office. Previously, he worked on Android at Facebook. He received his B.Sc. in Math, Computer Science, and Physics from the University of Cape Town.
1. What do you do at Alloy?
I’m a frontend software engineer, which means I work on building new features in our web app. I enjoy building stuff that will be directly useful to people. In the nature of a startup, there isn’t always such a clear separation between frontend and backend, and I’ve also worked on backend changes whenever it’s needed to support frontend work. For example, recently I’ve been working on an alert feature triggered by exceptional metric values, which has also required some changes in our backend to support filtering data based on metric values.
2. What’s the biggest difference between working at an Internet giant like Facebook and a startup like Alloy?
One of the biggest differences, as you might expect, is in the scope of work. At large companies, including Facebook, you’ll generally be working on smaller areas of the product. Most of the work you do as an individual will be more along the lines of small incremental improvements rather than large changes to how the product works, but the work you do will affect a large number of users.
Conversely, at startups, especially early stage ones like Alloy, the projects span many areas and you have the opportunity to really shape the direction of the product. It’s really exciting to have such a major impact and know that it probably wouldn’t have happened without you.
3. What’s the most exciting project you’ve worked on at Alloy?
The most interesting project I’ve worked on so far in my roughly seven months at Alloy has been demand forecasting. This is an important area that helps us go from passively reporting past data to making recommendations based on future predictions. It’s been a learning experience for me, since I learned a lot about different forecasting methods that I was previously unfamiliar with, such as ARIMA and ETS. It has also been an interesting technical challenge to scale up forecasting to hundreds of thousands of time-series.
4. What advice would you give to someone interested in pursuing a similar career path?
Software engineering is different from other technical fields in that formal qualifications aren’t necessarily the most important thing. However, there’s still a lot that you need to learn to be a good software engineer, much of which you won’t necessarily learn in a Computer Science degree. It’s important to be interested in learning and to seek out opportunities to do so, writing as much code as possible through personal projects and reading about new technologies.
If you’re a student, then doing internships is really important and will teach you a lot about working on larger projects. In my case, an internship also directly led to my first full-time job at Facebook.
5. What first interested you in software engineering?
I first learned to program as a kid because I was interested in making games, but programming competitions were what really made me serious about computer science. I first took part in the national computer olympiad in high school and later the ACM ICPC in university. Not only did I learn a lot by preparing for competitions, but I also met a lot of great people, including the person who referred me to my job at Facebook.
6. What do you like to do outside of the office?
After spending so much time behind a computer screen, I enjoy doing stuff outside during my free time. Most weekends I find time to go hiking, and I also enjoy skiing in the winter. I’m also really into modern board games, like Carcassone, Dominion, and Resistance.