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.

Improvements based on performance review - MLE

Mid-Level Software Engineer at TikTok profile pic
Mid-Level Software Engineer at TikTok

Feedback

I got feedback on the last two quarters since I joined the company on three things:

Impact - E; Teamwork - M+; Technical Skills - M

Except for that, something that I was lacking was leadership & ownership.

Current Level: Mid-level.

Question Focus

  • I wanted here to discuss my struggles in improving my technical skills & leadership. And what mindsets & behaviors I need adopt.

  • My focus is more about getting a good rating & having a good bonus. And less about promotion at the moment.

Discussion

  1. At the moment, I rely a lot of my lead to make decisions about things I work on & focus on. This is due to following aspects:
    1. I feel part of it is me not having confidence in myself to know what's right. Since my lead has much more experience in this area & I'm very new to it.
    2. The uneasiness of not knowing what's the right approach. It's easy to have another person look at it than dive deep into something you don't look of.
    3. Sometimes documentation is not in English at my company & that is a burden into looking at things deeply.
      1. It breaks my confidence at times & slows me compared to other people who know that language.
  2. New tools & languages
    1. C++: I haven't spent much time learning it since I focussed on moving fast & creating impact so far. So that hampered me in setting aside time to learn this language that's used a lot in backend code.
      1. And at times I ask people in help for navigating code than I should do myself.
    2. I'm also haven't worked much in the backend part before being a MLE but now we all have at my current company but I don't feel any new concepts here I need to know.
    3. Design patterns
      1. I see these patterns in the code-base. Like how they use configs & classes. I see some other people in my team figuring it out very seamlessly. But I don't know which pattern they are using.
      2. And I don't know how time I should spend on this. Since reading a whole book on design patterns would be a lot of time. But knowing them would be useful.
  3. Algorithms & ML
    1. A big part of my job or my main-job is improving the algorithms & ML models to make more revenue.
    2. A lot of times, I see my teammates reading similar approaches in the company & adopting them to our use-case. Sometimes doing so I find it hard. Since the docs of these approaches are not in english at times.
      1. So I have ask around some folks to translate things. This severely slows me down.
      2. The better way could be to read outside papers/approaches but that takes more time. And may not know if they fit so good to our use-case.

Would love feedback on

  • how I can work better on these things
  • what mindsets I can adopt here to make more progress.
Show more
79 Views
2 Comments

Meta / Facebook Team Matching - How to find the best team? (E4)

Mid-Level Software Engineer at Series A Startup profile pic
Mid-Level Software Engineer at Series A Startup

I'm moving forward to team matching at Meta for E4 and wanted to ask the community if they had any suggestions for teams with the strongest potential for growth, especially for the New York office.

The recruiter gave me the following survey. I stated I'd be more of a "Product - Generalist" role. Would also be curious to learn more about "Systems - Generalist" as I did the System Design interview as well.

In general from what I've seen, there's a decent amount of opportunity in Instagram, Whatsapp, and Reality Labs (from product announcements and earnings calls). I've also been told to avoid monetization as it's difficult to make an impact there.

Would appreciate any advice or suggestions! Also would appreciate tips on what questions to ask Hiring Managers to assess how they grow E4s.

What is your role? (select the one that applies)

  • Systems - Generalist
  • Product - Generalist

What type of work motivates you the most? (select all that apply)

  • Infra: Scaling challenges
  • UX: Building user experiences
  • Growth: Top of line impact
  • Integrity: Ensuring platform safety
  • Social Impact: Progressing positive change on key social issues

Who do you want to build products for? (select all that apply)

  • Consumers: External, individual users of the Meta family of apps
  • Businesses: External business account users of Meta family of products
  • Meta Employees: Users of internal tools
  • Developers: Internal and external engineers using Meta developer products and APIs

Please select which Meta Pillar(s) you’d be interested in joining? (select all that apply)

  • Family of Apps: Enable optimized enforcement and support of account integrity to foster safe and meaningful communities.
  • Monetization: Empower people and businesses to succeed in the global economy
  • Gen AI: bring the transformative potential of generative AI to people and businesses
  • Reality Labs: build tools that help people feel connected anytime, anywhere

How would you rank your preference in terms of products? (feel free to use numbers)

  • Facebook App
  • Monetization
  • Privacy
  • Messenger
  • Instagram
  • WhatsApp
  • Reality Labs (AR/VR)
Show more
2.6K Views
2 Comments

Looking for career and job guidance as an immigrant - How to get jobs?

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

This will be a bit of a long story so please bear with me, I am willing to give you more context.

I am a foreign student who graduated from computer science. I have been working in the field since 2021, I was more passionate about design and big data over intensive leet code coding. These were the projects I also aced in college getting 90% in Big Data or Front End Design projects and barely passing on coding intensive

When I graduated to maintain my status I had to be employed in an E verified company so I took what I got, a full stack developer position. My mindset was more, maybe it’s a fear once I dive into might overcome it. The company was amazing and so were my managers. I loved every moment working there - I even finished all the assigned projects ranging from maintenance to building full MERN stack apps in 2 1/2 years. I learnt a lot and got more confident in my developer abilities.

Despite getting things done and finishing projects, I did realize I want to dive into UI/UX/ Front End Development or Reporting, because I’ve always enjoyed doing that more than Full Stack. I had a talk with my manager to see if I can laterally move. He gave me a go signal, but I got laid off a month after.

I will take 100% responsibility here that I had got a little complacent with furthering my career “outside “ work hours, and I learnt my lesson which I am willing to change and I got time to think about it after being unemployed 2 1/2 years of all the things I could’ve done better.

It’s been 2 months. I’ve been applying for jobs and haven’t got any, barely got 2 interviews which I didn’t do well in, but I’ll keep persisting

A sticking point I noticed here, generally being introverted I have some discomfort with marketing myself better or more like an imposter syndrome, and I was passive during my last work too which I know is not serving me anymore

What am I doing which is in my control?

  • I enrolled in Googles UX certification and plan to get my portfolio ready in 2-3 months so in future I can be transition into my dream career
  • Enrolled in a SQL course so I can keep the option of reporting open
  • Joined this group because I never had much of a tech industry network or guidance, and I plan to take my career more seriously going in future.
  • Applying for jobs everyday, mostly Full stack because that’s what I can explain to the interviewer because I have experience. Since my OPT unemployment starts Nov 15 which I get 3 months of

My questions:

  1. What might be the possibilities that I am not getting interviews at all? I am not even applying to big tech, mostly manufacturing companies. Where can I send over my resume for review?
  2. I do want to make the change into either reporting or UI/UX, because I am passionate about that and I believe I can kill it In that, how would you suggest an entry-mid level developer going down that path?

I am open to any honest feedback.

Show more
97 Views
2 Comments

Risk of PIP!!! Performance Review: Sometimes Meets Expectations x2.

Mid-Level Software Engineer at TikTok profile pic
Mid-Level Software Engineer at TikTok

My Role is Senior SRE

I received my second performance review and it came in at a -M which means Sometimes meets expectations. This is my first year in big tech and I'm at a loss for words. I worked 12-hour days since I started. The first 6 months I just winged it and did not realize how strategic and crucial these performance reviews were.

So for my second 6 months, I aligned with my team lead and manager. I executed every project they asked me to and even created some projects to help the entire team. I was led to believe I was doing good work. However, this Tuesday I received the news that my rating is again a -M. They said that they did not put me on a PIP because they saw improvement from the last PR.

They told me the reason was that I am one of 3 Sr. Engineers and that two of them are performing more than I am. Since we are rated on a curve I am last. 9 out of my 10, 360 reviews were positive and an M or above. I have a follow-up meeting next week with my manager to discuss my improvement plan. I also set up a call with my manager's manager for a coaching/mentorship call.
Here are my questions.

  • I feel like my manager sees others as more proficient than me. Even though other colleagues tell me I am better than the other senior engineers how can I break out of this perception my manager has?
  • How can I avoid a PIP? Our next performance review is in 2-3 months due to some changes they made in the yearly PR schedule. I don't think I can make enough changes during that time.
  • What should my approach be towards my manager and his manager?
    • I want to be humble but also direct.
    • I feel I am not being treated fairly but I also think the system may be designed this way. I don't want to appear like I am a victim either.
  • I fear that I will get a PIP due to my manager's subjective opinion I will lose my job, my apartment, and I will have lost the last 2 years of working myself to the bone. How can I escape being in this state of survival?
Show more
1K Views
2 Comments

I have been put in PIP. What should I do?

Site Reliability Engineer [L4] at Taro Community profile pic
Site Reliability Engineer [L4] at Taro Community

There have been multiple instances since I joined last October with my manager where in, I felt I didn't fit in. I had lots of excitement when I joined in, but since the 1st month, with interactions I have had with him everything went downhill.

I realised that I don't work until there's a fire/my life depends on it (serious deadline). I am literally the pro definition of procrastinator. I have been this person for so many years. Until things get serious, I have never had self motivation to do the hard things. When I want to do hard things, I always have procrastinated, when deadline comes, I try to find existing solutions, only when there's nothing that exists but I have to think and create one and I believe I can do it, I do it!

These things make me worry whether I have the ability to take anything up in this world. When items/issues are discussed during work, others pitch in and talk, and I just listen, and think, how am I not able to come up with these stuffs or be proactive in solving problems.

Is tech not for me?

What should I do now? My PIP is for 1 month. I do think I can survive PIP as this is exactly the fire thing I was talking about above. But I don't think I can provide the consistency they ask for! I am preparing for backend since I found my work in DevOps is mostly Ops and I like learning things than executing. I am not ready for job change for primary reasons like -

  1. Don't know what job should I take?
  2. Not ready to take DevOps roles with current knowledge I have
  3. Not ready yet to clear backend interviews

Has anyone else ever been in my shoes? Not in PIP terms, but if they can relate to the procrastination bit / self motivation. What did you do to solve the problem?

Show more
8K Views
20 Comments

Choosing between a team with interesting work vs team with more potential

Mid-Level Software Engineer at Yandex profile pic
Mid-Level Software Engineer at Yandex

Hey, I work at a large IT firm (can be compared to Big Tech in the west, similar culture, similar scale of work), currently in the process of switching teams, interviewed with a bunch, ended up with a choice of 2.

The first team has great growth potential (they are young and intensively hiring), and it directly works with money, so it seems like a good place for an SWE to do projects that are meaningful on the scale of a company & to have an opportunity to grow as a manager (more opportunities to pick up an intern, as they hire - to become a mentor of new hires and lead projects with them as a part of my virtual team). They have an analytics team which prospects the important tasks, and when the tasks are done, the results are measured to calculate the profits.

The second team is special in that it deals with the subject area that interests me the most - they develop an analogue of Facebook Games (or ), and it hits home, as I got into SWEing to be a game dev (before I found out they get paid pennies ). This team has less potential for growth, to the point them may have no headcount for an intern, and the hiring of new members will be slower. Also, they do not work with money directly, rather with target metrics defined by business. But they also have an analytics team which proposes the tasks based on the projected metrics growth & they measure profits on task completion, so the aspect of delivering the measurable profits is present here as well.

I'm trying to choose the best team for my career goals - long-term growth from L4 -> L6. As far as I understand, that may be done through team-leading of through tech-leading. I fully understand I'm not going to develop any games myself in team #2, but the fact that the subject area is the one I understand makes me feel like I'll have some morale boost in that I'll have an understanding of usefulness of the tasks i'm doing, as well as I'm seriously considering overworking for the next 1-1.5 years to perform better than peers & grow from L4 to L5, and it just feels like if I have more connection to the area of work, it'll be easier to pour extra effort, opposite to the area which I have little emotional connection with.

But this point about the "morale boost" might just be me wearing the rose-colored glasses, and I may be making a mistake trading a team with better potential for the one with seemingly more interesting scope.

In your experience which is better long-term - the team where work is work, but it's better for career goals, or the team where the work seems interesting, there's less direct career opportunities, but you feel like you are more likely to make your own via being more involved into the project you work on?

Show more
168 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