9 ms·
Lessons learned as a software developer turned project manager
- rodolphoarruda 4y agoI didn't read the text, but I'm glad to see people switching to project management. I've been one myself for 16 years, until I found that it was a dying career or, at least, a career obfuscated by alternatives like "product owner", "customer success" or just by the fact teams are getting more and more self-managed. I've seen a consistent reduction of job openings for project managers. Some specific niche oriented job boards don't even have "project manager" as option to select in the opening creation form. So four years ago I left my last project management job to never look back nor forward, as there wasn't much to look at anyway.
- visviva 4y agoWhat did you switch to?
- rodolphoarruda 4y agoProduct manager.
- MiddleEndian 4y agoAs someone who has been in the industry long enough that I should know, but I always just call people PMs and never delved past that... what is the distinction between being a Project Manager and Product Manager?
- LeSaucy 4y agoI have found that product managers are more motivated towards sales and marketing of a product/solution, project managers are more logistical and keeping people informed.
- eatonphil 4y agoIn companies that do product development, project managers are responsible for schedules/timelines/reporting. Product managers are responsible for what is the problem, what is to build. It's a massive difference. Good product managers are experts of the market, have vision for the company and product. Project managers focus more on bookkeeping.
- ghaff 4y agoIt varies depending on company, type of product, etc. However, in my experience with mostly computer systems hardware, project managers were more internally focused and concerned with minutiae of schedules, resources, dependencies, etc. Whereas product managers interfaced with sales, customers, and--depending or the organization related groups like product marketing, marketing communications, etc. But PM/PMM roles can vary a fair bit.
- rodolphoarruda 4y agoThe most relevant distinction between the two from the company's perspective, IMHO, is that the product manager is often seen as potential revenue generating agent, whereas the project manager is pure operational cost. One would have to articulate a lot to make a point about a project manager being directly associated with sales/revenue etc. -- the top line. "Oh yeah, the project manager can increase customer satisfaction and then contribute to upselling, especially in companies focused on farming and not much on hunting customers!" -- I agree, but it's rare now.
- tremon 4y agoIt's pretty much in the difference between a project and a product: by most definitions, a project is a tool for change in an organization, and has a limited lifetime and a limited scope. A product, on the other hand, is a tool for performing some business function (either internally for staff or externally through sales), and its scope can be whatever the business needs. Typically, a project manager has authority over resource allocation and resource planning, but must defer to the stakeholders for everything else (most importantly, for actual design/implementation decisions). A product manager has authority over the complete lifecycle of his product, including design, implementation and resource allocation.
- digisign 4y agoFinally there's Program Manager... a 'program' being a continuously running project. Think, a government program for...
- andi999 4y agoI talked to a 'pure' project manager for a big company, basically this guy went to a 2 hour project meeting then to his secretary got a new folder and into the next 2 hour project meeting. Basically ticking boxes related to gantt charts. This is the far end of project manager, a fully political position with not too much expertise in the specific project required.
- corrral 4y agoProject manager: - Reads Jira (or whatever) and moves things around (yes, they may also add things sometimes, but I'm drawing a general distinction). - Gantt charts. - Tracks project status, communicates it upward. - May also do some communicating expectations downward. - Translates blunt assessments of the project's progress into managerese. - May have some responsibility for keeping development processes going, especially ones that involve lots of communication (think: Agile shit, or just project status meetings generally) - Helps unblock process-related shit. Product manager: - Writes to Jira a lot. - Does market research, or works closely with those who do. - Guides the direction of the product (e.g. which feature do we tackle next, do we pivot). - Works closely with key stakeholders (clients, product owners, domain experts) to determine that direction. - Sells that direction to management and such. - May have some significant sway on final decisions for e.g. design. - May do quite a bit of business-model analysis.
- Unbeliever69 4y agoMy your account, a project manager is a plumber. Nice analogy.
- esel2k 4y agoSame here. Was project manager before now product manager and would never go back. As project manager I was only looking after budget and timelines and creating gantt charts for management. As a product manager I read market analysis, run customer research, talk to partner companies, run workshops, create a vision and discuss various potential solution with dev teams and others. I think the role of project manager is dying for a good reason. Developers can organize themselves and it is more important to have that leading person motivating the dev teams with interesting problems while respecting them -> my approach. The rest is shared between product mamager, senior developers maybe some shared delivery lead resources or the engineering manager.
- tmountain 4y agoSome companies seem to be glomming project management into the list of job responsibilities for the dev lead on the team. Oftentimes this results in a role where the dev lead is 1/4 project management (or scrum master), 1/4 engineer, 1/4 people manager, and 1/4 hiring manager. Say what you will about it, but I think the trend will continue as organizations try to cut costs with the coming economic downturn.
- BFLpL0QNek 4y agoNoticed this to and it’s not great. The person is spread to thin and there’s a lot of different skills to do each role well. The best project manager I had was a film producer moonlighting as a pm between films. The film producing experience, tight deadlines, tight budgets, scheduling, lots of cross functional teams, bringing them together at the right time etc really carried over well.
- wembeley 4y agoI don't believe this is strictly a cost-cutting measure. I think companies are realizing subconsciously that people who can do this are worth their weight in gold (although I might be biased as one of them) because they can put together the whole picture of software development. You can certainly achieve the same effect with a well-functioning team, but that's harder to manufacture than hiring one person who can put the whole thing together in their head. Of course the tradeoff is what you said: these people get burnt out if not carefully managed and they are probably less optimal than they could be performing any one of those roles in isolation. But the value of getting a synthesis across those functions and moving a project in the right direction is extremely valuable.
- watwut 4y agoThe problem with that setup is that such one person is super rarely actually keeping all those roles in their head. At least one of those roles suffers a lot, usually more of them.
- vsareto 4y agoIf someone's that skilled, you might be able to double up on slower remote jobs and collect two salaries instead of getting one position with the demands of two jobs but with the salary of 1x to 1.9x of a slower job. There seems to be diminishing returns for salary increases with responsibility increases.
- snidane 4y agoMany times non-technical project managers were useless. Just overpaid glorified secretaries trying to take meeting notes, often losing valuable information in translation. It made sense to rebrand to other job titles so as not to attract the same wrong people full of certifications which were irrelevant to software dev. In the end I can see it being named project management again, but only after the wrong crowd is weeded out.
- ryandrake 4y ago> Many times non-technical project managers were useless. Just overpaid glorified secretaries trying to take meeting notes, often losing valuable information in translation. I'll also point out that this stereotype is widely accepted by engineers, so even if you are a former engineer and do have the technical chops, many engineering teams out there will treat you like a secretary anyway and disregard your technical judgment. I'm a project manager but have been coding for longer than a lot of engineers I work with have been alive. I've seen the spectrum of engineers from great collaborators who treat you as a [technical and professional] equal, to arrogant assholes who treat you like you're their note-taker/janitor/servant. For a concrete example, I remember a project manager arguing with a senior developer about what a particular wireless specification required, the project manager had a Bernie Sanders moment when she had to remind him, "I wrote the damn spec!"
- plebuhn 4y agoI agree that project management is dying as a field, I think it is a natural reaction to the top-down command and control style of project management popular in the early 2000s in favor of more agile, self-orienting teams. I do see a new flavor of project management coming back branded as technical program management, which is more a flexible position responsible for the large cross-functional projects while filling the gaps of a dev team via process development, facilitator, and/or scrum master. Usually, this role is only necessary for large orgs with multiple teams or highly regulated industries that require a lot of coordination.
- lliamander 4y agoWhat do you do now? In general, I would consider this trend healthy. Managing your time and your priorities, communicating with stakeholders, etc. are all skills that all engineers should develop over time, even if just for their own personal work. At the team level, shared processes and priorities should be guided by a tech lead/engineering manager who has the incentives to keep process overhead to a minimum. Ideally, once a process has been put into place there should be very little for a dedicated project manager to do on a day-to-day basis. Where project management skills shine most is when the work involves multiple teams and the "lowest common manager" is either too high up the org chart to be involved in the details or doesn't exist (because the coordination is between separate companies). This usually manifests as "customer success" or "technical program management" roles, though they could just as easily be called "project management".
- canaus 4y agoAre there any resources on how to move from developer to product X role? I've realized I'm more interesting in creating solutions and ways to make them better than coding them, but the path to get from A to B seems muddied.
- Minor49er 4y agoI'm not sure if there's a great overall guide for this since different employers will expect different things. But you'll make progress if you show interest in not just building, but refining the product as a developer, plus telling your manager that you're interested in product manager/designer/etc. If you can provide examples or observations about the product and its lifecycle, it can help take those conversations to something tangible
- onelesd 4y agoIf your org has a software consultancy sales arm, you can make this shift by becoming a solutions architect. You'll get to work with sales and product to create solutions for prospective clients. A good product person will jump at the opportunity of a dedicated architect to help them with the tech portion of pitch decks.
- ilovefood 4y agoThis was the reason I decided to write this article, I was in a similar position and had to improvise somehow. I didn't find many resources for people transitioning from developer to product/project manager roles. I think one pragmatic way to approach it is to find an opportunity within your organization to try it out without having too big of an impact at first. This way you can learn what works for your business. I really believe that product management is not a 100% transferable skill like programming would be, it's more dependent on who and what you are dealing with, hence the lack of general resources adapted to devs. There might be some general guidelines here and there, but in my many interviews this year, I found out that product management at company A can be totally different than at company B. I'd gladly read some resources if somebody answers your question better than me though!
- 4y ago
- mmargerum 4y ago"Senior developer " is the worst role you can have. You are the architect, manager of your devs, heat shield, meetings attender, and you still full time coding job. You get 2% annual raises for your trouble because you are salary capped. I jumped ship to a tech lead job. Now I do what I always wanted which is to direct a team (dotted line) by scaffolding out the project using diagrams and shallow coding. Very few soul sucking status meetings. .Dream job and a nice 25% salary boost.
- DawsonBruce 4y agoI was promoted to senior engineer this year at my organization… And what you’ve said is 100% true.
- andi999 4y agoWait, senior developer is paid the same as developer?
- mmargerum 4y agoI don't remember saying that but I do remember saying I had capped as a senior developer.
- Cloudef 4y agoTrue, especially in small company / startup ...
- ilovefood 4y agoOP here, I can completely relate. I am changing jobs too for a similar role, hopefully :)
- mmargerum 4y agoBest of luck. In the right company tech lead is a blast!
- jghn 4y ago> "Senior developer " is the worst role .... I jumped ship to a tech lead job At a lot of companies the description you gave for "senior developer" would be described as a tech lead. In many other companies neither example you gave would line up to their terminology. And every possibility in between. There's not much uniformity in titles and descriptions of roles.
- MisterBastahrd 4y agoA quick informal poll for devs stuck with agile out there: After scrum, do you: 1. Immediately get to work 2. Spend time going through recent communications 3. Walk away from the keyboard to decompress ?
- Karawebnetwork 4y ago3. Burn through my 15 minutes morning paid break to go make some breakfast or coffee and decompress. The scrum is rarely a productive meeting, it is more of an outlet for the extroverts of the team to talk. As an introvert, this tires me. Often the people in question don't even take breaks themselves. I wish they would take their break to have that small talk so I could keep my break for a better time. This seems generalized to all teams I've worked in across several companies.
- Cloudef 4y agohttps://toggl.com/blog/mars-software-development https://toggl.com/blog/mars-software-development Very much related
- marcosdumay 4y ago> After scrum You mean the daily standup? Scrum is a full process. There's no "after", no "before". It's a steady state. (Anyway, I need to decompress almost all meetings I have, of any kind.)
- MisterBastahrd 4y agoYeah... I meant standup but by the time I realized what I wrote, I couldn't go back and edit it.
- nonameiguess 4y agoI tend to wake up really early and get straight to work, so by the time scrum comes around, I've already gotten 3-4 hours in, but haven't yet eaten or showered, so that's what I do next.
- 4y ago
- t43562 4y agoI think a project manager trying to run agile is almost a contradiction in terms. Agile is usually a team practise which outsiders like a PM don't get a say in. The Product Owner feeds work in and stakeholders get to argue about the order of each item and that's all. A retrospective allows the team to adjust their way of working to fit better to their situation and it is them that decide not some PM. Standups are aimed at killing long status meetings and if they're not then something is wrong. The Ceremonies have a purpose and the overall purpose is to use the development resource that is available to do the things that most need to be done and not waste it on anything else. To bring this back to the article - how can a project manager decide what is or isn't efficient for some team? How can they estimate anything when they are far from the details - no matter how much programming they did in the past?
- jrochkind1 4y ago> I think a project manager trying to run agile is almost a contradiction in terms. I believe you can find that "contradiction in terms" at thousands of organizations these days. Probably more than are "running agile" without a "project manager".
- t43562 4y agoI suggest that it's "agile in name only" because it was fashionable. The people at the top have probably bent it all back to waterfall because ... who knows - maybe it suits their style of thinking or makes them feel in control?
- azangru 4y agoYou described the point of view of an agile practitioner, leaning towards scrum. Could you contrast it with project manager's role? What's a project manager - a role eliminated by scrum - expected to do?
- t43562 4y agoPresumably they become product managers or something like that and try to get a series of changes through various teams in a co-ordinated way that add up to some achievement or "project". Their estimates have to be based on what teams predict and velocity and so on and on.
- pojzon 4y ago> You can't lead developers if you have no clue about developing. Sorry. Yessss. So many companies dont understand that. Every time I was a part of project that struggled it was due to terrible middle managers that did not understand anything and could not decide. They often try to dispatch ALL their work to someone beside status meetings and forwarding emails. Useless leeches. If you are this kind of Project Manager do everyone a favor and leave. Team will most likely not even notice you are not there.
- saos 4y ago> You can't lead developers if you have no clue about developing. Sorry. Out of curiousity would you say the same about product managers?
- lstamour 4y agoYou need to know the product and if the product is software, you should be familiar with its quirks or can chat with developers at that level. You don’t have to know how code works to know something about how it works. Ideally, you should be able to give directions to your QA person on how to get started interactively testing new features, etc. Leading developers requires tech knowledge, leading product managers requires strong product knowledge as well as an understanding of what’s possible and what might not be possible, which one develops over time learning an app. Might not align well with the above statements, but I recommend the following books for product folks: INSPIRED: How to Create Tech Products Customers Love https://g.co/kgs/CxFues https://g.co/kgs/CxFues EMPOWERED: Ordinary People, Extraordinary Products https://g.co/kgs/2DhX7s https://g.co/kgs/2DhX7s Product Roadmaps Relaunched: How to Set Direction While Embracing Uncertainty https://g.co/kgs/EthDBf https://g.co/kgs/EthDBf Product can contribute strong to the visible software while leaving the tech and implementation decisions to technical teams…
- corpMaverick 4y agoNo. As long as the product manager is really an expert/specialist on the product. Understand the market, the user, some tech, usability, etc.
- 4y ago
- grahamm 4y agoSeems to be the same story over and over. I am also a senior dev who was was taken in as tech lead which on day one turned in to scrum master but told to keep it light and develop at the same time. Then the team grew and the role became team lead, responsible for organising and team, time lines, deliverabes and recruitment, but I am not a project manager, we don't hire project managers, still need to code as well (fat chance). You get to hate it and start to envy the junior and mid level Devs.
- mind-blight 4y agoThis is exactly my experience. Senior management spent 2 years convinced that 1) we didn't need project managers, and 2) tech leads weren't just glorified project managers besides all of the evidence to the contrary. The messaging was 'we're working out the kinks - it shouldn't take that much time is our processes are being implemented correctly'. I bought in for about 3 months before it became pretty clear that coordinating stakeholders and balancing business and technical requirements was a full-time job. The role became a mess that burned out anyone in it
- PeterWhittaker 4y ago> You can't lead developers if you have no clue about developing. Sorry. I’ve been both a developer and a development manager (and a few other things), and once upon a time I would have agreed wholeheartedly with this. Then about 10 years ago I started working with the best PM I have ever known. He is absolutely not technical. He is, however, a great listener, opionated about protecting people from burnout and dumb processes, honest to a fault, and able to speak candidly and openly to techs, devs, execs, and everything in between, switching language as he goes. On one project we worked on, I had an advisory role and he ran the development sprints. He was amazing at understanding what the devs needed and managing the manager’s unrealistic expectations of how quickly things could be done. He also put his foot down and insisted that everything flow through him, to be integrated into schedules based on, well, balancing everything else with business priorities. It took a some time for the devs to trust him, and it took a lot of soft skill work on his part to gain that trust, but before long they realized their weeks were pretty evenly balanced. The first big win was no more high priority interrupts from the manager, who had to work through him. That helped a lot. He knows nothing about development, in the sense of having no idea how to do it. He does know people and knows how understand what they need. FWIW, YMMV. He’s a rare breed.
- gbrindisi 4y agoI also have similar experience with people in leadership roles. My theory is that technical leads have a narrower distribution of quality, while not technical leads vary wildly, from crazy good to nuclear winter bad.
- dnissley 4y agoI'm watching Ted Lasso and it's uncanny how well this describes the titular character
- rileymat2 4y ago> He also put his foot down and insisted that everything flow through him, to be integrated into schedules based on, well, balancing everything else with business priorities. This is a mixed bag, it can be truly helpful or a political control structure. All the other personality traits are probably what makes it work.
- doctor_eval 4y agoThis resonated with me in so many ways. I frequently use the “garden” analogy and I think developing software efficiently in small teams is absolutely crucial. Society wastes so much time, effort and goodwill on unqualified software project (mis)management. I have lost two important (to me) jobs because I refused to adopt stupid, inefficient processes handed down by non-technical “managers” who thought they knew how to manage developers better than I did, despite my 30 years of experience. Reading this almost made me cry. If I could upvote this a thousand times then I would.
- mpyne 4y agoThis was a great read indeed. I was sort of surprised at the direct attack on 'agile', especially when the author's recommendations at the end could practically have come straight out of agilemanifesto.org. Seems like the Agile Industrial Complex has twisted the meaning of 'agile' in developers' minds completely out of what the manifesto's authors meant by now.
- doctor_eval 4y agoRight? I am pretty much fully onboard with the Agile Manifesto but in industry, “agile” has come to be synonymous with “scrum”. And scrum is terrible.
- g051051 4y ago> Agile is not efficient and doesn't scale Truer words were never spoken.
- dionian 4y agoi would argue it was never supposed to have scaled. businesses do need to scale engineering teams though, so its natural they tried to scale something that works at a team level.