Profile picture

Senior Engineer Career Development Videos, Forum, and Q&A

How A Senior Engineer Can Grow Their Career

Senior engineers have proven themselves to be extremely capable at shipping high-quality, complex software efficiently. This collection breaks down how they operate and how you can get to this level too.

Measurement of impact for MLE?

Senior Software Engineer [E5] at Meta profile pic
Senior Software Engineer [E5] at Meta

I joined my team in June this year right after bootcamp. When I joined this team, we set the goals for the half, and then got reorg-ed to a different domain (think ML for ads vs ML for recommendations).

Our models had only shown limited success in the previous domain before the reorg, we spent around 2 months (July and August) just building new versions of these models for the new domain.

It's October already, the model hasn't shown any significant success in any of our projects with XFN. We are getting closer and closer as we understand the problems better. However with code freeze in November, December - it is unlikely it will reach production or even online experiments by then.

Does that mean I would have "no impact" at my first PSC? This would be the case for all of my teammates which seems bonkers.

I thought about writing a long note with all of the progress we've made in understanding the problem (which will result in a model that's cheaper than the current one and easier to understand), what are some results we have seen already, and hypothesis on where to go next.

Still to be honest I'm scared the results I got won't be good enough to get to production by PSC-time, and thus I'll be marked as no impact. In retrospective I should have studied the problem more when I joined but I was so new to Meta.

How can I mitigate this? Looking for a side-project now I can fully own (as E5, I don't think attaching myself to a teammate's project is good enough) is unlikely to get any results with the current model we have.

Show more
Posted 2 years ago
139 Views
1 Comment

Should I join an important project with difficult team mates or a not so important project with great team mates?

Mid-Level Software Engineer at Taro Community profile pic
Mid-Level Software Engineer at Taro Community

I was lucky to join a very competent and lovely platform team when I joined my current company. I have been working in the same team for 18 months but due to re-orgs people have moved out and we are currently 3 people and we were 9 people when we started out.

We have been doing mostly maintenance work for the past 3 months after re-orgs and recently we were given a choice to work on two projects.

There is one project, lets call it Project Hero which my skip level manager wants me to join. I would be the main PIC for this project and it will involve a lot of integration work and system design. This project is with new team mates and a new manager with whom I have not worked but they don't have the best reputation. However, going by FAANG level, they should be good enough to get the job done. Only downside is work-life balance might be skewed if I join here. However, if the project is a success, it sets me up for Senior level promotion.

There is another project, lets call it Project Nero. This will be with my existing team but from a company perspective, it's not a very important project. But I will be working with my existing team mates who are both capable of delivering a solid project and a joy to work with. However, my work here will be overshadowed by other Senior engineers on the project.

Which project should I join? I personally want to do Project Hero but not with the people present there. Also it will be challenging.
Project Nero will be challenging also but more up my comfort zone.
Given the current economic climate, I feel being in more important teams will help keep my job.

Show more
Posted 10 months ago
138 Views
3 Comments

Transitioning into the compiler engineering field (or any other domain) if you are unemployed and don't have prior experience in the field

Senior Software Engineer at Taro Community profile pic
Senior Software Engineer at Taro Community

I am currently seeking to transition into a career as a compiler engineer, a field I find deeply fascinating. The interdisciplinary nature of compiler engineering, bridging areas such as computer architecture and graph theory, intrigues me greatly. Additionally, the sector offers promising financial rewards, especially with companies like Meta, Nvidia, and AMD that are at the forefront of hardware accelerators experiencing significant growth. I am convinced this growth trajectory will continue, making this career path an ideal blend of intellectual fulfillment, professional growth, and competitive compensation.

Due to recent layoffs, I find myself unemployed, and I am seizing this moment to pivot towards compiler engineering. However, I acknowledge that there is a steep learning curve to becoming an ideal candidate for such positions. The required skill set typically includes:

  • Proficiency in C++
  • Experience with GPUs
  • Knowledge of an Intermediate Representation Language (e.g., LLVM)
  • Understanding of computer architecture

Previously, I worked as a senior backend engineer, specializing in tool development using functional programming languages such as Scala and Ocaml. My experience spans across FAANG companies and two startups.

To bridge the gap in my skill set, I have been actively contributing to open-source projects similar to LLVM and honing my C++ skills through consistent practice on Leetcode. Despite securing a few interviews for compiler engineering positions, I have not been successful, primarily due to difficulties with compiler-specific questions.

I seek advice on the following:

  1. How can I enhance my chances of entering the compiler engineering field, especially without being part of a compiler project community or holding a position of authority within such a project?
  2. What strategies can I employ to prepare for and succeed in domain-specific interviews, considering my lack of prior experience in this area?

Any guidance or insights from those who have navigated a similar path would be immensely appreciated.

Show more
Posted 10 months ago
130 Views
2 Comments

How collaborative, creative, and engineering driven do you get to be in an L5 role in FAANG+?

Anonymous User at Taro Community profile pic
Anonymous User at Taro Community

At my startup I was asked to deliver feature after feature + bug fixes by PMs as fast as possible without much time for proper refactoring work or engineering initiatives. Also it was pretty individualistic where you get assigned a task and only work with other engineers during a tech spec review meeting, code review, and syncing with a backend engineer (as an Android dev).

From Alex’s video on getting promoted to tech lead, I saw how you can 1) drive projects as an L5 engineer (vs a PM putting that together with designers) 2) Not have to know how to implement everything yourself for a project, but work with many others and facilitate the team. This sounds 100x more engineering driven and collaborative than at my start up with few developers. Is this common to many people’s experience of the norm in FAANG?

What I liked about Alex's story is also how he had the time and space to do things like document the differences between iOS and Android, as well as go all the way through to making a data analytics plan for monitoring it himself. Seems like a lot of freedom and ownership which I didn't feel I always had the time for personally. Being able to not have to spend 80% of your time coding but rather doing deep work thinking, planing, designing holistically sounds extremely satisfying and rewarding as an engineer. Maybe this also comes with experience at startups as well?

Show more
Posted 2 years ago
128 Views
2 Comments

Need guidance on my career path - Leave for FAANG?

Senior Software Engineer at Taro Community profile pic
Senior Software Engineer at Taro Community

I have worked at two larger companies and two small startups (currently at one). I'm quite content with my current company and role, as I have ample opportunities for growth and a great work-life balance. However, the only factor that makes me contemplate leaving my current position is that I'm earning less than some of my peers. I'm not comparing myself to the exceptionally high-earning individuals; rather, I'm looking at other senior software engineers who are making around $400K in total compensation. Currently, I'm earning around $250K. It's important to note that I recognize my experience level is relatively young compared to those with 20-30 years of experience, as I have only 6 years of experience.

I want to think about the bigger picture and position myself in the best possible way for the future. When I discuss this with some of my peers, they suggest that I should work at a FAANG company at least once to attract recruiters from better companies. While I've always been drawn to roles with high visibility and a need for velocity, I've found that at larger companies, I tend to work at a slower pace with less visibility. However, if transitioning to a FAANG role is indeed the key to opening up new career opportunities, I'm willing to consider it.

Has anyone else faced a similar dilemma in their career? I would appreciate any insights or advice from individuals who have gone through a similar experience.

Show more
Posted a year ago
126 Views
3 Comments