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 Data Engineer at Taro Community profile pic
Mid-Level Data Engineer at Taro CommunityPosted July 10, 2024

Burning the Midnight Oil?

Other than for a very specific, time-critical reason, e.g. an upcoming launch or being on-call, is there ever a good reason to "burn the midnight oil" by deviating from one's normal life routine to put in more work hours? Here's what I see this deviation looking like: taking fewer breaks in the day - so instead of going for a walk after 2 hours, doing it after 3 within a work-bloc, having longer time spent at your desk - so sitting interrupted at your desk for over an hour, for example. If you're following the health gurus, you should be standing up often, and the Pomodoro technique is classically 25-minute focus blocks, but I don't know how practical this is cutting out gym time to get more work done - for me, exercise is generally 1 - 1.5 hours of time which I do 3 or 4 times a week, so I can get more keyboard time in if I cut it. working later into the night and either cutting into sleep time or just waking up later the next day These are all examples of trying to eke out more productivity. The last 2 in general are frowned upon from a health-standpoint. In my case, I'm onboarding and think I'm behind on my first ticket, hence the motivation for my question. I know quality (spending my time in the right way) is a lot more important than quantity, but quantity is easier to add as so many people have pointed out on this site. Yesterday, I had a new coworker, someone I had never spoken with before spend 4 hours on the phone with me and that was both practically helpful and psychologically helpful. Getting help like that in general is a lot more productive than just throwing more time alone at a problem. Just trying to add more context. Thanks!

71 Views
4 Comments
Mid-Level Software Engineer at Unemployed profile pic
Mid-Level Software Engineer at UnemployedPosted March 4, 2025

senior engineers are leaving in my team, is this a red flag?

I joined the company 8 months ago as SRE in UK. i got an mentor helping me to onboard to the team and I joined the team with lots of senior which i think i can learn a lot from them. However, starting end of last year, my mentor resigned and got an offer to elsewhere. Then the other senior is also resigning. Both got a job offer and quit. I originally thought it is normal as they have been staying the company for 5 years. As two members left, it seems my team didnt get any backfill, and resources have been heavily invested in India. In terms of project wise, I am currently working a non critical project, later found out in all hands it is going to be decommissioned after 2 years. I asked my manager that I wanna to work on the organisation priorities project, but it seems my team have no ownership and my manager reassured me that if we have this opportunities in the future, he will put me into the project. in terms if performance review, i got an average rating (meeting expectation) now my team is left with 3 members and i felt like i do have any impactful projects, it is very hard to get exceeding expectation and also very scared to be put in piped. in this scenario, should i trust my gut feeling this team is shrinking and i should start to look for other job or it is a normal to get a non-critical project and I still be fine as long as my manager are happy with my performance?

70 Views
3 Comments
Mid-Level Software Engineer at Taro Community profile pic
Mid-Level Software Engineer at Taro CommunityPosted May 30, 2024

How to Effectively Divide Time Studying Between DS&A and System Design

I'm currently studying for software engineering interviews, but I'm having a hard time deciding how to divide up my time between doing LC problems and going over system design concepts. It can feel overwhelming since both categories have so much to cover. I also have a family, so most of my studying gets done after my kid goes to sleep at around 7 PM. Since my team is in the west coast and I'm in the east coast, I do get some extra time in the morning to work out at the gym and go through some LC problems. I'm currently going through Neetcode's course as a refresher. For those of you who have aced your interviews, how did you divide up your time on different topics? Did you mostly spend your time on LeetCode? I'd be happy to hear any recommendations. My main goal: I want to be interview-ready no matter what. I currently work at a big tech company and I've been there for 4 years now, but I haven't seen much growth and now I'm seeing that I could have negotiated more when I first got my offer. I was asked 2 LC-type problems, and I feel I got lucky with them because I hadn't extensively gone through all the different patterns and data structures. It was my first time getting RSUs and I wish I had known more about negotiation tactics as well. I feel that if I be ready for interviews, I can apply and definitely increase my comp by a lot. The motivation is for me to overcome the fear of DS&A problems and not stop myself from applying to positions just because I'd be asked LC-type questions. I also know that I can double my comp with the right negotiation tactics and with my years of experience.

65 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