L3 and L4 engineers are the most similar on the IC ladder. The differences come from the stronger technical skills L4s are expected to have. This allows them to handle more scope with less guidance. Here’s how FAANG-like companies judge L3 vs L4 engineers.
DSA is a small part of the job. The key to succeeding as a new grad is to get great at the fundamentals of building good software. Some skills needed for this:
1. Ability to understand requirements then find where in the code to make changes that meet those requirements
2. Technical skills needed to write quality, well-tested code
3. Communication & collaboration skills /w teammates
Building features for side projects or open source are a much better example of what an engineer should know to do well from L3 -> L4. Hope this helps!
Codebases at most companies are so massive that there's no way you can keep it all in your head. You need to get good at making small changes inside a larger codebase you can't fully comprehend.
If I was new, I'd ask someone with experience on the team for code pointers for where to start. Then add print statements or break points and execute the code to see that it does what you expect. Once you can run the code and inspect it, you can make changes to it.
Hey Ryan, thanks for sharing this, as someone early in his career, do you have any resources you'd recommend looking into or books that would help with the 2nd pointer that you mentioned above?
Hey Justin, the best way to develop those technical skills is to learn by doing. This means writing a lot of code and receiving feedback from others who have strong technical skills.
If you're working full-time, I'd say try to find someone on your team who has these skills already and ask them for feedback via code review.
Agreed, the L4 -> L5 gap is much wider and there are some distinct behavior changes
Happy to, I will cover the L4 -> L5 level expectations then start writing the guide on how to do L3 -> L4 -> L5 in the fastest possible way. Stay tuned!
So, let me tell about my self. I am a junior frontend Engineer (Early stage startup [only 7 employee]) . But, my some work in company like L5 level. So, I am curious to know, what is the expection of only one frontend engineer at startup. And Please explain all levels in early stage startup. I want to become senior frontend engineer please help to achieve that.
Besides knowing DSA what would you EO text a new grad engineer to already know?
DSA is a small part of the job. The key to succeeding as a new grad is to get great at the fundamentals of building good software. Some skills needed for this:
1. Ability to understand requirements then find where in the code to make changes that meet those requirements
2. Technical skills needed to write quality, well-tested code
3. Communication & collaboration skills /w teammates
Building features for side projects or open source are a much better example of what an engineer should know to do well from L3 -> L4. Hope this helps!
Thanks! Any tips for navigating a codebase? At my first FT SWE role and I’m having trouble with it as it’s my first time and never did OSS.
Codebases at most companies are so massive that there's no way you can keep it all in your head. You need to get good at making small changes inside a larger codebase you can't fully comprehend.
If I was new, I'd ask someone with experience on the team for code pointers for where to start. Then add print statements or break points and execute the code to see that it does what you expect. Once you can run the code and inspect it, you can make changes to it.
Hey Ryan, thanks for sharing this, as someone early in his career, do you have any resources you'd recommend looking into or books that would help with the 2nd pointer that you mentioned above?
Hey Justin, the best way to develop those technical skills is to learn by doing. This means writing a lot of code and receiving feedback from others who have strong technical skills.
If you're working full-time, I'd say try to find someone on your team who has these skills already and ask them for feedback via code review.
If you're looking for supplemental resources you can take a look at Clean Code - https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship-ebook/dp/B001GSTOAM/
There's more in here than you need but the first 10 chapters cover a lot of general guidelines for writing solid, maintainable code.
Would love a guide to move from L4 to L5 quickly as the level seems much wider
Agreed, the L4 -> L5 gap is much wider and there are some distinct behavior changes
Happy to, I will cover the L4 -> L5 level expectations then start writing the guide on how to do L3 -> L4 -> L5 in the fastest possible way. Stay tuned!
It could also be useful sharing how other staff engineers got promoted
Good idea Ivan, after I cover L3 -> L5, I'll start getting into Staff engineer promo and expectations content
Great post, Ryan! Definitely agree on the difference in scope of work
Thanks Jordan :)
So, let me tell about my self. I am a junior frontend Engineer (Early stage startup [only 7 employee]) . But, my some work in company like L5 level. So, I am curious to know, what is the expection of only one frontend engineer at startup. And Please explain all levels in early stage startup. I want to become senior frontend engineer please help to achieve that.
Thanks Mahesh.
What are the difference between to solve ambiguous problem by L3 vs L4 vs L5 vs L6? Please explain...
Hi Mahesh, wrote a bit about ambiguity per level here: https://www.linkedin.com/posts/ryanlpeterman_handling-ambiguity-well-is-a-key-component-activity-7108464481726337025-wL0H
Thanks sir