Profile picture

Mid-level Engineer Career Development Videos, Forum, and Q&A

How A Mid-level Engineer Can Grow Their Career

Mid-level engineers have very strong technical proficiency, able to execute on small to medium-sized projects with minimal hand-holding, leveling up from junior engineers.

Stuck as an Entry Level Engineer

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

Hello,

As the title says, I’m stuck as an entry level engineer in FAANG for almost 4 years now. I’ve been reflecting on what I’m doing wrong.

My first company I worked for 1 year and didn’t not like it because the lack of mentorship. I joined and my questions never got answered, the tech lead didn’t really care about giving mentorship, just gave me links and bug IDs. I was able to survive for 1 year but I left the company because I felt so lost. My manager mentioned that I was “on track” to getting promoted but I hated the culture.

Then worked for 1.9 years on another company, where I received awards for my projects and contributions. I did receive mentorship here, but I was not able to get promoted. At the end of the timeline my manager mentioned I was moving slower and slower. I was working as a full stack and I believe my error here was not playing my strengths, since every time I had to take another project it would be on a different area, such as server on a language I never used before. I had a few discussions with my tech lead and I felt I lost my team trust because they would give a lot of comments, and just get a lot feedback from other people. This kinda demoralized me and made it hard to keep working so I changed teams. My last team I worked for 8 months before getting laid off. Here I also received recognition for my projects. My first project I missed the deadline because the onboarding had nothing to do with my project. I integrated our tool with an external team, so most of the code base I worked was not even ours (the techlead and team didn’t have much knowledge). Then I was given another project where I was starting to get traction, onboarding and project matched, I had to ramp up again on the new tech stack and my manager was getting frustrated with me, my team was very helpful and I was slowly to become independent. I feel like people trusted me here and code reviews would go smooth this time, at the end I was finally getting positive feedback, but was affected by the layoffs. From reflecting, here is what I did wrong:

  • Not communicating well enough my work with my managers. Status updates I was blocked/learning and that would make me look slow.

  • Not very good mentorship, I feel like at the beginning I needed lots of 1:1 to be able to learn our teams codebase. Sometimes I got very good mentorship but not complete. So I learned well parts of the code base where the tech stack applied.

  • Switching projects too much, went from front end, full stack, server side with several languages. Every time I had to re learn a lot of new of the tech stack.

I did get several recognitions for my contribution with at least helps me think I’m not completely inadequate for the field.

I am looking for a new position, is there anything that could help me perform well as a mid engineer?

Thanks

Show more
Posted 2 years ago
653 Views
2 Comments

Fear of picking a specialization/niche: Is focusing on front-end okay?

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

Hello Taro Community

I want to pick a specialization now due to the market and the lessons I’ve learnt being in the group.

A little context on the issue:

I had a mindset that more technologies I know the more options I’ll have and also working as a full stack dev in my last position I got a lot of hands on experience on different stacks. More like breadth of knowledge but not depth.

I was applying to jobs like Database, UI/UX, Front End, Back End, Software and DevOps couldn’t land any interview in the last job hunt.

Last month I let everything go and I told myself I’ll specialize in “Full Stack”. I have been also working on side projects for my portfolio.

However, a lot of senior devs told me Full stack is too broad and 2 and 1/2 years of experience that won’t cut it.

I want to specialize in Front End with React and go very deep in that. Build projects pertaining to React Front End for my portfolio.

My fears:

  • I’m closing down my options, and limiting myself to Front End
  • Also being a foreign student where you kinda have to “work in tech” since that’s my major a lot of fear is coming up. In case the time I go back in the industry there is lack of front end openings
  • A lot of family friends in the industry telling me that Front-End specialization will be a waste of time since the industry is very saturated with it

Deep down I have realized specializing will really make my portfolio, knowledge and resume stronger. Plus Front-End is something I genuinely am drawn to and enjoy doing.

Would love to know your input on this.

Show more
Posted a year ago
652 Views
5 Comments

How to create influence in a team of Mid-Level Engineers?

Mid-Level Software Engineer [L4] at Snap profile pic
Mid-Level Software Engineer [L4] at Snap

Hi. Sorry for the long post.

My manager is quite happy with my performance as an IC, so in our 1:1s during feedback sessions, his suggestions for me are usually around increasing my influence within the team. Drive decisions, improve processes etc.

To add some context, Snap has a HUGE L4 band. Bigger than most companies (L5 at Snap is equivalent to E6 at Meta). This means we have a LOT of L4 engineers.

So right now I am in a situation where my team has 6 L4 engineers, ranging from 3 years of experience to 10 years of experience, with me falling towards the lower end of this range. To make matters worse, we also don't have a TL or Principal Engineer in the team. Which means we don't have a "guiding" engineer in the team to help "decide" on important technical decisions.

This has some consequences.

There's a big scope for "showing influence" in the team. Since we don't have a TL, every important decision is an opportunity to influence the team. And literally every L4 engineer is trying to jump on that ship. So we have this situation where people try to out-influence others (not sure if thats a word). This leads to lots of debates, lots of pointless meetings, and people eventually "fighting" over trying to be the decision makers for a decision.

A real example scenario: we recently had some discussions about improving our operational tickets backlog process, and literally every single L4 in the team wanted to write a doc on it to suggest improvements, to introduce a process to make the ticket backlog handling better, to show "influence" in the team.

I guess my question is, in a team like this, how should I try to build my influence ? I realize that everyone in the team is trying to achieve the same, so what can I do different. I know this is not a unique situation and very very common among more senior ICs, so hoping to pick their brains.

Show more
Posted 2 years ago
617 Views
4 Comments

Surviving at Amazon vs Meta as Mid Level software engineer

Mid level at Taro Community profile pic
Mid level at Taro Community

I am a software engineer with 3 years experience at a fintech company and I am on H1B visa with 33 months left. I recently got offers from Amazon L5 and Meta E4.

I am debating between two positions because I know Meta has an up or out policy. If I can’t get promoted after 33 months I will run out of my H1B time to switch job. With Amazon I can stay at L5 and potentially relocate to another company (supposed I dont get PIP). I see myself as a hard worker but I am not as fast at coding as others.

I like the work at Meta better but I am worried I can't survive there reading many comments that Meta moves much faster than Amazon.

I have the following questions and would greatly appreciate any guidance:

With Meta

  1. How are the ratings Meet most, Meet all, Exceed Expectations decided at Meta ? Are they evaluated based on the 4 axes (Impact, Direction, Engineering Excellence and People)?

  2. If I complete all projects within the timeframe I agree to , do I get MM, MA or EE ?

  3. How does one get Meet Most ?

  4. Does the obsession with “impact” and “metrics” at Meta lead to people competing for sexy projects only and avoid things that are harder to measure like Engineering Excellence (refactoring codebase) ?

  5. For work that falls under the Engineering Excellence category, what are some tips to justify or measure their impact ?

  6. Is it better to give conservative estimate for the projects I work on to meet the deadline so I can get Meet All ? Or doing this will put me at risk of not delivering enough work in each half ?

With Amazon,

  1. How does one get PIPed ? Not completing as many tickets as others ? Not finishing the project they promise to deliver ?

My other concerns are

  1. Green card: Meta labor market test failed 99%. Amazon paused PERM for the last 2 years so no data to compare but they said they will start PERM process (maybe batch PWD) for me 4/2025

I know it is not an offer evaluation platform but I would greatly appreciate any suggestions to guide my decision making process. Thank you

Show more
Posted 4 months ago
614 Views
7 Comments

Should I have worked on weekends to ramp up faster / deliver more?

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

Hi all,

I joined my current company (known in our industry for not-so-good WLB) 6 months ago as a Senior Software Engineer and have been doing side hustle in the evening and weekends over past 6 months beside my main job. This means I still completed the 9am to 6pm work schedule before doing my side hustle.

Now my manager is saying I have low bug fix count and my team consists of some weekends workaholics which I suspect I’m being benchmarked against. My upcoming performance review is due end of December 2023 (1 month away). The expectation for my level is ramping up in 3 months which means the last 3 months are no longer considered ramp-up period.

What should I do in this last 1 month leading to the performance review? Should I go all in on the weekends too or should I keep the pace I’m working (I’ve started working in the evening from 7PM to 10PM since receiving this feedback 2-3 weeks ago but on weekends I still hustle). Was I wrong in doing side gigs / projects while ramping up for my full time job and should have instead pushed weekends to ramp up? What could have I done better in the past 6 months and moving forward in 1 month ahead?

I know Rahul talked about doing side contract gigs and Alex talked about doing side projects while both are still at Meta (a very demanding big tech company). How did you guys handle the pressure and what are your schedules like? (Wake up @ 4AM, work on side hustle till 6-7AM, then go to sleep at night around 12AM LOL)? I'm curious about how people organize their side gigs schedule.

Thank you for your advices. I really appreciate it.

Show more
Posted a year ago
608 Views
2 Comments

Learn About Mid-level Engineer

A mid-level software engineer has all of the foundational technical skills, industry knowledge, and practical experience that allows them to contribute to software projects. They can collaborate with cross-functional teams, handle complex tasks, and demonstrate a deep understanding of the technologies they work with.
A mid-level software engineer can demonstrate a certain level of technical proficiency and independence. They should be able to handle most bugs without needing constant guidance. They should also be able to independently implement features with medium complexity. It is the level where one becomes less reactive and more proactive. Proactivity means anticipating where bugs may show up as well as suggesting improvements in the codebase. They should have a high standard of code quality and high velocity of code velocity.
The journey from a junior to a mid-level engineer is a significant step in one’s career. It’s important to focus on developing the skills necessary for the next level. This shift involves being able to write code to being able to write better code faster. One should be able to understand systems, plan out projects, meet deadlines, and occasionally function as a lead to make the transition. They should also be improving their communication skills during this period and seek feedback on their work from more experienced software engineers.
The transition from a mid-level engineer to a senior engineer involves a deeper mastery of technical skills, leadership capabilities, and a complete understanding of the software development lifecycle. Senior engineers are responsible for making high-level architectural decisions, guide the technical direction of a project, and mentor junior and mid-level team members. Collaborate with your manager to develop a formal growth plan. Take the initiative to write the document yourself and discuss it with your manager. One should be able to recognize gaps that a mid-level engineer has so they can improve them: writing more code rather than reviewing code, not being available to help out during big incidents, or only dealing with one’s own code. By focusing on these issues, you will be able to exert your influence more broadly across your team and company. You should also consider mentoring some of the more junior members on your team to help them grow and develop their skills.
The journey from a junior engineer to a mid-level engineer or a mid-level engineer to a senior engineer involves a continuous process of learning and refining one’s technical, communication, and leadership abilities. One should strive to have more and more impact and influence across their company to have a successful career progression.
Show more