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.

Mid-Level Software Engineer at Pre-series Startup profile pic
Mid-Level Software Engineer at Pre-series StartupPosted December 6, 2023

Direct manager has opposing views with the rest of upper management. Which one should I follow?

I am working at a 2 year old startup that has just launched its product a few months ago. The launch was considered a failure because the product has so many issues and customer complaints. Some customers even stated that they prefer the competitor product. After being here for less than 6 months, I observed that the company has a culture of rushing everything with lack of planning and resources/manpower to execute their vision. None of the upper management has business experience in this exact product, they only have experience in tangentially related product. Also, prior to the formation of the current engineering team, the company hired an overseas vendor that overpromised a 6 months project that dragged out into 2 years. That is the main reason the current engineering team I am part of is built: to replace the vendors. The investors are known to be very profit-oriented right from the start, and they are also funding another startup that has the exact same product as my company, although this startup will not be launching anything until next year. The combination of inexperienced upper management and culture of rushing things lead to product failure. Thankfully, I think the atmosphere in the office is still pretty positive and laid-back. People are not pointing fingers and they still do their best to recover from their mistakes and prepare for future initiatives. My manager has stated from the very first time I join the company that he prioritizes quality over speed, and given our previous product failure by the vendor, I agree that this is the solution. However, the Product Manager doesn't agree with this and he pushes us to prioritize speed over quality, even if that's the exact mindset that leads to our product failure. The rest of the upper management seems to adopt the same mindset of quick fixes and rushing, and the most alarming part is that we don't seem to have identified our core users, so I'm not sure if our previous launch has actually taught us anything. Also, I noticed that the Product Manager is lacking competencies in some key areas. I expect a PM to be someone who can not only have a vision on what the product would grow into, but also someone who can do analytics, business projections, and prioritize the most impactful projects for the team. In our daily interactions, he seems to be someone who just passes words from one person to another without doing any substantial management. This is slowly leading to resentment from my manager towards the PM because the team is slowly being overwhelmed with unimpactful tasks that hinder our future milestones. My questions are: Which direction should I follow? My manager's or the PM's (majority)? Should I consider this a sign for me to look for new company? Or is this still normal and workable? If yes, what kind of role / actions should I take in this situation? How should I convey this in my 1-1 to my manager?

80 Views
6 Comments
Mid-Level Software Engineer at Taro Community profile pic
Mid-Level Software Engineer at Taro CommunityPosted January 20, 2024

How to deal with internal team "level" jealousy?

In a previous team and organisation I had 3 different reports. Lvl 5, lvl 4 & a lvl 2 I was the only remote member of the team, so at times it was difficult to fully understand the social and team dynamics within their office. I initially was unaware of any jealousy within the team until I was asked to fly out for a week for an unrelated reason. When on the ground, it become very clear to me there was a strong level of tension between some of the employees. The lvl 5 was jealous of 2 of their friends who were now lvl 6 because they joined the organisation at the same time. The lvl 4 was a strong performer who was happy with their current position. However the lvl 2 who was an apprentice, was an outstanding performer (approx lvl 6) and it was close to witnessing a savant, especially at their age (18). However there was no possible way for them to go up any higher as their role was tied to the completion of a certain stint of education. This, alongside that the lvl 5 had aspirations of becoming a lvl 6 but was severely under performing which was especially noticeable by the lvl 2 - made things very awkward and difficult to navigate. The outcome of this in the end was that I would support the lvl 2 in finding another role in a different organisation and with the lvl 5, we had a long discussion alongside my director to work out a plan of how they can start adding more value and improving their position within the team. How could I have gone about this differently to create a more positive environment for the team?

79 Views
1 Comment
Mid-Level Software Engineer [L4] at Taro Community profile pic
Mid-Level Software Engineer [L4] at Taro CommunityPosted March 12, 2024

Choosing between 2 projects

I switched jobs ~4 months ago and switched teams (not voluntarily) after ~1 month. My eventual goal is to (voluntarily) internally transfer into the AI org once I'm eligible. During a 1:1 with my skip manager, I mentioned that my current team didn’t have much opportunity for impact. He floated a meaty project in a different org and asked if I was interested. Previous question here. Let’s call this option 1. Afterward, I spoke to my direct manager, who presented opportunities in the other team that he directly manages. Let’s call this option 2. Now I'm trying to decide between these options. Pros of option 1: More technically interesting Platform/infra play that will eventually integrate with every single product => project has large scope Cons of option 1: Not sure whom I'll work with Not sure how much support I'd get. (Good thing if lots of scope; bad thing if I'm flailing alone) Org structure tbd: although my skip asked if I want to work on this, he’s loaning engineers to another org to fund the initiative. Uncertainty re: how well defined the work is Pros of option 2: I know there are things that I can start working on tomorrow that are time-sensitive and needed for an upcoming product launch. My EM manages this team and is responsible for the overall delivery. He seems to care more about this new project/team than my current team. - It sounds like my EM would rather that I work on option 2 than option 1 Product surface is high-visibility and therefore affords opportunity for impact Cons of option 2: I'm less interested in product / user-facing work, even though it's high-visibility With all this in mind, does anyone have advice on which option I should pick or things to keep in mind? Thanks for reading this far!

77 Views
4 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