Ask HN: How does a junior engineer plan for a managment position?
7 comments
Having the ambition to be a manager is great, however I'll advise that you first focus on building some functional expertise (engineering in your case). Great managers command respect of their team by showing that they understand what their team is doing, asking right questions and hiring great people. How will you develop all these without having some functional experience yourself? I think you should start as an engineer and develop management skills on the job, through mentorship, reading, taking initiatives etc. (and if needed, pursuing MBA later). Feel free to reach out if you want to talk more 1:1.
Great question, and it's good that you're thinking about your career trajectory.
School is generally thought to be a fast-track to experience. That is, a degree translates to N years of experience in the real world. In reality (at least according to my experience), the MBA degree is merely a ticket to an interview. If you got your MBA in Management and Project Innovation, you might have a leg up on non-MBA holders, but you'll still wind up with a bit of trial-by-fire, since you don't have a lot of real world experience. Plus, grad school can be expensive.
Another route would be to go straight into the workforce and do some real-world software engineering. You'll find out really fast whether the coding-to-decision ratio is good enough for you, or whether you really want to move up into management. As others will tell you, management is a whole different animal. For most technically minded people like software engineers, they usually only want to make technical decisions. Managers, on the other hand, have to think about a lot more, especially on the business and people side of things.
Find a mentor and learn as much as you can. At first, this should merely be a lead engineer. They'll have experience making decisions AND the technical chops to back it up. If you reach the position of Lead Engineer and you still want to get into management, find another mentor. (Hint: mentors are a fantastic way to move up in organizations and learn a lot in the process).
And above all, don't rush into anything. You have your whole career ahead of you. Enjoy it as much as you can.
Good luck.
School is generally thought to be a fast-track to experience. That is, a degree translates to N years of experience in the real world. In reality (at least according to my experience), the MBA degree is merely a ticket to an interview. If you got your MBA in Management and Project Innovation, you might have a leg up on non-MBA holders, but you'll still wind up with a bit of trial-by-fire, since you don't have a lot of real world experience. Plus, grad school can be expensive.
Another route would be to go straight into the workforce and do some real-world software engineering. You'll find out really fast whether the coding-to-decision ratio is good enough for you, or whether you really want to move up into management. As others will tell you, management is a whole different animal. For most technically minded people like software engineers, they usually only want to make technical decisions. Managers, on the other hand, have to think about a lot more, especially on the business and people side of things.
Find a mentor and learn as much as you can. At first, this should merely be a lead engineer. They'll have experience making decisions AND the technical chops to back it up. If you reach the position of Lead Engineer and you still want to get into management, find another mentor. (Hint: mentors are a fantastic way to move up in organizations and learn a lot in the process).
And above all, don't rush into anything. You have your whole career ahead of you. Enjoy it as much as you can.
Good luck.
Thank you very much for this detailed answer.
Would you care to explain for me a little further the concept of mentorship especially in a context of a big corporations?
Would you care to explain for me a little further the concept of mentorship especially in a context of a big corporations?
At some point, you go to a senior person and you say to them, "I've been here X [months/years], and I feel like I've learned a lot. Someday I think I could see myself doing what you do. If my career goal is to have your job in 2 years, what do you think I should do?" Hopefully, this person is receptive and will give you advice. Meet with them periodically and check in. If you do well, they'll want to train you as their replacement when they inevitably leave or get promoted out of that position.
Repeat ad nauseum.
Repeat ad nauseum.
Highly recommend you do some reading on Quora. There are many similar questions, and asking there is likely to get a good set of answers to add to anything here.
Realize also that many engineers are disdainful of managers and management, so take any feedback you get with a grain of salt. Explicitly aiming to become a manager will get a bad reaction from people.
That said, managing people and process is a real set of skills at which people can be good or bad. You can practice and improve these skills like any others. There are plenty of people who are managers who are poor at it, but that's no different than any other job. And no, experience itself won't grow you the way you want. Adding side training will be essential, whether it is individual courses, Udemy and similar coursework, reading, or full degree programs.
I think an Master's in this "Management and Project Innovation" would be valuable. My path was realizing after about 7 years of software work that I really enjoy the larger activities of businesses even moreso than the software development, so I got an Executive MBA. That gave me some negotiation power to finally slot into a leadership role. It also rewired my brain and vastly expanded my knowledge of leadership and of understanding business concerns to be effective. It really revolutionized my whole way of thinking about the world and made me a better person in my personal and professional lives.
So my take would be: if your passion is in _orchestrating_ projects, do consider that MBA and angling for a Project Manageer role as well. But you should also get a year or several of software development so you learn the realities of people working on software projects. I think practical experience is important to stay grounded when you get with with management theories and practices. Without real-world experience anchoring you, it can turn you into a Pointy-Haired Boss personality.
If you already think that is going to be an interest to you, I encourage you to go work 2+ years as a software engineer, then start a Master's degree concurrently after you have some experience.
Email me if you want to talk in more detail.
Realize also that many engineers are disdainful of managers and management, so take any feedback you get with a grain of salt. Explicitly aiming to become a manager will get a bad reaction from people.
That said, managing people and process is a real set of skills at which people can be good or bad. You can practice and improve these skills like any others. There are plenty of people who are managers who are poor at it, but that's no different than any other job. And no, experience itself won't grow you the way you want. Adding side training will be essential, whether it is individual courses, Udemy and similar coursework, reading, or full degree programs.
I think an Master's in this "Management and Project Innovation" would be valuable. My path was realizing after about 7 years of software work that I really enjoy the larger activities of businesses even moreso than the software development, so I got an Executive MBA. That gave me some negotiation power to finally slot into a leadership role. It also rewired my brain and vastly expanded my knowledge of leadership and of understanding business concerns to be effective. It really revolutionized my whole way of thinking about the world and made me a better person in my personal and professional lives.
So my take would be: if your passion is in _orchestrating_ projects, do consider that MBA and angling for a Project Manageer role as well. But you should also get a year or several of software development so you learn the realities of people working on software projects. I think practical experience is important to stay grounded when you get with with management theories and practices. Without real-world experience anchoring you, it can turn you into a Pointy-Haired Boss personality.
If you already think that is going to be an interest to you, I encourage you to go work 2+ years as a software engineer, then start a Master's degree concurrently after you have some experience.
Email me if you want to talk in more detail.
Hello
I am in a similar position (7 years of development and getting bored of having no say in what gets build) and wanted to ask a couple of questions.
- Is an MBA essential for the transition?
- Does college name matter when doing an MBA for this purpose?
- Do you get to recoup the cost of the degree?
- Did you change employer to make the transition into project manager?
I am in a similar position (7 years of development and getting bored of having no say in what gets build) and wanted to ask a couple of questions.
- Is an MBA essential for the transition?
- Does college name matter when doing an MBA for this purpose?
- Do you get to recoup the cost of the degree?
- Did you change employer to make the transition into project manager?
It really depends on the size of the company you are seeking for. I have worked in start-ups and one of the largest financial institution.
For start-ups: As long as you are good, you will have a say in most of the area you mentioned (maybe not policy and long term objectives)
For sizeable company:
How projects are done - as development manager, you will be one of the many stakeholder in the project. Instead of thinking you will be dictating how a project is done, your role will more likely in leading some sort of committee where decisions are agreed upon by all the stakeholders.
Technical choices - the architecture team is responsible for deciding on the technology choices.
Policy - policy change is usually driven by internal, external audit. You will be assigned to take care of the aftermath of the audits depending on your area of expertise.
Technical design - manager usually don't have the technical know-how on the technical design
Long term objectives - these are coming from the investor level by setting ROI target for CEO to meet. It will subsequently trickle down to every level in the organization.
It sounds like you have a romantic notion of what a managerial role entails. In this day and age, management are usually the ones getting slashed. The smarter ones usually stay in senior technical roles because the compensation in the managerial role doesn't justify the risk and the time involved.
For start-ups: As long as you are good, you will have a say in most of the area you mentioned (maybe not policy and long term objectives)
For sizeable company:
How projects are done - as development manager, you will be one of the many stakeholder in the project. Instead of thinking you will be dictating how a project is done, your role will more likely in leading some sort of committee where decisions are agreed upon by all the stakeholders.
Technical choices - the architecture team is responsible for deciding on the technology choices.
Policy - policy change is usually driven by internal, external audit. You will be assigned to take care of the aftermath of the audits depending on your area of expertise.
Technical design - manager usually don't have the technical know-how on the technical design
Long term objectives - these are coming from the investor level by setting ROI target for CEO to meet. It will subsequently trickle down to every level in the organization.
It sounds like you have a romantic notion of what a managerial role entails. In this day and age, management are usually the ones getting slashed. The smarter ones usually stay in senior technical roles because the compensation in the managerial role doesn't justify the risk and the time involved.
I've been a professional developer for 10 years. Maybe you plan on being more of an analyst. Managers usually are pushed away from technical decisions. Don't try to become a manager too soon. Nobody wants a manager that is 10 years younger than the technical staff.
Want to grow quickly? Learn the ropes in big companies for big money, use small startup companies to grow into new functions. Don't stick with the same job too long.
Want to grow quickly? Learn the ropes in big companies for big money, use small startup companies to grow into new functions. Don't stick with the same job too long.
> Learn the ropes in big companies for big money, use small startup companies to grow into new functions. Don't stick with the same job too long.
Agree! At big companies you will see the best and worst of software, projects, and variety of different leadership styles. But they can be stultifying over the long term, and many operate by burning out their junior people. Get in, see it all and learn, then get out and explore at smaller companies.
Agree! At big companies you will see the best and worst of software, projects, and variety of different leadership styles. But they can be stultifying over the long term, and many operate by burning out their junior people. Get in, see it all and learn, then get out and explore at smaller companies.
What's the difference between an analyst and a manager?
> Learn the ropes in big companies for big money
I think I'm going to do my graduation project in something like that. Should I push for a contract there after (as a first job)?
> Don't stick with the same job too long
How long is too long ?
> Learn the ropes in big companies for big money
I think I'm going to do my graduation project in something like that. Should I push for a contract there after (as a first job)?
> Don't stick with the same job too long
How long is too long ?
By analyst I mean this: https://en.wikipedia.org/wiki/Systems_analyst
> Should I push for a contract there after
Try to surround yourself with the best developers and managers out there. Learn their tricks and tales.
> Don't stick with the same job too long
I've once spent 2 years at a job learning nothing, accomplishing nothing and getting insulted on a daily basis. Don't stick longer than 5 minutes in such a place. As a rule I try to stick 4-5 years. Unless of course I get grossly disrespected or something way more beautiful comes along.
Consider a lead, team lead or architecture based role. If you want control of technical desicions, a regular management position won't give you what you are seeking.
Also pay attention to politics. That becomes on of the main items to master while looking at management, even though places deny this, it exists everywhere.
Also pay attention to politics. That becomes on of the main items to master while looking at management, even though places deny this, it exists everywhere.
And even though I love coding (and I'm not planning to ever stop writing code), I always saw myself more in a role of "management of some-sort" where I could have more influence on how projects are done, technical choices, policy, technical-design and long-term objectives.
My point is, on the long-run, that I don't see myself as "just" a coder.
My school offers a master's degree called "Management and project innovation", I've also heard good feedback from people that are doing an MBA elsewhere.
Do you think that this kind of career-objective should be achieved via school, or do you think that this comes naturally with seniority?