Tasting Room > Engineering & Tech Table > Tyler Ly
Interview conducted in November 2021
Appetizers
Starting with some basics.
Job Title + Years of Experience
Software Engineer, 2 years
Areas of Expertise
Full stack, Ruby on Rails, React JS
Company + Industry
Gusto, B2B SaaS
Education
UC San Diego, Bachelor’s in Computer Science
Fun Starters
Getting to know the human side.
Favorite dessert?
My favorite dessert is probably honeycomb cake, aka bánh bò nướng
Favorite book or movie?
Favorite movie is Ratatouille
Myers-Briggs personality type
INTJ
What do you like to do for fun?
I like to rock climb or play video games. Currently playing a lot of Rocket League
What's one thing you recommend doing in your city, San Francisco, California?
If you came to San Francisco, I'd tell you to go to Golden Gate Park and eat some ice cream.
Main Course
A quick deep dive into the day-to-day job.
Tell us about yourself and your job.
My name is Tyler. I'm 25 years old and from San Diego, CA. I've been a software engineer at Gusto for about 2 years at the time of writing this. I write programs that help small business owners in America run their business better by calculating their payroll taxes for them, helping them find health benefit options, helping them determine if their projects are profitable, and more.
How did you end up in your field? What do you like about it?
When I was deciding what to major in for college, I ended up picking Computer Science because it was one of the AP classes that I was fortunate enough to take and enjoy. I just followed the path of my peers and mentors in college and became a software engineer.
There are a lot of things that I like about software engineering and programming in general. I like that the field is young and still evolving, so there's new stuff to learn all the time. Not that I know everything about software engineering so far. I also like that it's generally pretty easy to learn the things I want to learn because there are so many resources online and various forums where people might be struggling with the same thing I am.
What does a typical morning look like on the job?
Things look a little different pre and post-pandemic, but the day usually starts with a short meeting with my immediate teammates called a stand-up. During this meeting, we'll give updates on what we've worked on the previous day, what we plan on working on that day, and if there's anything we need help with. This meeting includes product managers, designers, and sometimes my engineering manager.
From there, I'll reply to any messages I have on Slack or quickly check emails for anything important. After all that, there's probably an hour until lunch, which is enough time for a little bit of programming, planning, or writing documentation.
Cool, then what does a typical afternoon look like?
A typical afternoon consists of more individual work, mainly programming. At my company, it's pretty common to work with another engineer on a problem with a method called pair programming. In the office, we'd sit next to each other on the same computer, and one person would be typing and navigating while the other person would be directing them on what to do. I might have 1 or 2 hours of pair programming in a typical afternoon.
There may be another team meeting that might include the product manager and designer, but it's very important for me to have large chunks of uninterrupted time, so I try to cut down on meetings as much as possible.
What types of projects and meetings are you involved in?
My work is usually a lot of problem-solving. Our customers need some features that will help them run their business better and more easily, and we come up with some way to make that happen. Usually, product managers figure out the specific things we need to create for the customer, but as an engineer, I also have to understand the space enough to make smaller decisions about some details of the product. I'm not in a lot of meetings besides update meetings and occasional planning meetings when we need to figure out work that needs to be done for features.
Who do you collaborate with within meetings and projects?
I personally collaborate with product managers, product designers, and data scientists. The product managers tell us what kind of features we need to build. The product designers tell us how the feature should look in the product. The data scientists tell us information about whether our feature is being used the way we intended or if the feature we built is useful to our customers.
Dessert
Now for some juicy insights in the tea room.
What's the most challenging thing about your job?
The most challenging part about my job is the ambiguity. There is no perfect solution in software engineering, and a part of becoming a better software engineer is figuring out what trade-offs to make. This is different from the habits that we're taught in school.
In school, I was always aiming for 100% and making sure my programs were perfect. However, at work, I need to come up with a solution that is just good enough because time is more valuable, and the quicker I can finish one feature, the quicker I can move on to the next task. If that means not leaving the code in pristine condition, then that's a sacrifice I have to make.
What are some characteristics that can help someone succeed in your role?
I think one of the best characteristics to have as a software engineer is humility. If you have humility, you will be less afraid to ask for help. The quicker you seek help when stuck, the quicker you can progress and finish your project. No one knows everything in the field, and even the best software engineers can forget simple things. When they do, they can search the internet for a quick answer, which is also what we're taught not to do in school because it's considered cheating.
Any advice on how to stand out and get hired for those just starting off?
A common piece of advice I heard when starting out was to do side projects and put them on my resume. I don't think my side projects got me very far in my career. But they were fun!
What helped me get my first job were my friends and classmates. By making friends with my mentors who were older than me and had internships or full-time jobs already, I was able to get referrals which made it a lot easier to actually get an interview. From that point, it was my job to study for interviews and make sure I receive an offer. After your first job/internship, it will be easier to get interviews, but interviewing doesn't get easier.
What's something that surprised you about your job?
Something that was surprising about my job was how collaborative it is. The stereotype is that programmers and computer nerds are antisocial people so then they go into a programming job and just never talk to people. I interact with the other members of my team every day, even during the pandemic.
What do you see your next step being?
The next step for me would be continuing to grow my skills and becoming more comfortable dealing with the ambiguity of work. I want to be able to empower other engineers to succeed and deliver value to customers. I don't know when I might leave my current company. I hope to take the skills I have learned at Gusto and help build another great product at a smaller company.
Any last thoughts, advice, or recommendations for someone who wants to do what you do?
There are loads of resources available online for anything related to software engineering/programming. It doesn't take a college degree to become a software engineer because most of the stuff I do at work, I didn't learn in school. Even the programming languages I use at work, I never touched in my classes.
School did help me out with making connections, but there are alternatives to traditional university available that would also offer the opportunity to create a great network.