6 ms·
OP here. I’ve written this based on what qualities I’ve observed several of my engineering colleagues exhibit, who are pretty good at building products and work
by gregdoesit 7y ago
OP here. I’ve written this based on what qualities I’ve observed several of my engineering colleagues exhibit, who are pretty good at building products and working with PMs. And who consistently get stellar feedback from business stakeholders, certain teams going straight to them, to discuss new ideas.
I beg to differ the article is super generic, as it closes with very engineering specific recommendations to build a “product-muscle” for developer [1]. This is the kind of advice and coaching I give to devs around me who would like to make more product/business impact.
[1] https://blog.pragmaticengineer.com/the-product-minded-engineer/#tips-to-become-a-more-product-minded-engineer https://blog.pragmaticengineer.com/the-product-minded-engine...
- ThalesX 7y agoOf course I am not going to argue with the person behind the article as the simplest explanation is that I misread, misunderstood, misjudged etc. However, I will ask you three questions to clarify this for me, of course optional: 1 - Do you think it’s possible for one person to do half of the things you listed? 2 - Do you think it’s possible for most product people to do most of the things you talk about outside of companies such as Microsoft, Uber and similar? 3 - Should the product minded engineer be interested in users or the stakeholders?
- gregdoesit 7y agoAnd I’m also not going to argue with people who have different experiences - I can speak for my own experience, and generalise it, finding others who might think similarly, which is what I’ve done here. This is to say YMMV. But to your questions. 1 - Doing half the things I listed. I hope this is not a loaded question, but I’ve seen people do all of them. It usually starts with people who are both good communicators, are curious about the “why” on things, being interested in how the business works. Then they bring product ideas. The nice you bring product ideas to the table, as an engineer, making pragmatic trade-offs is pretty straightforward (if we build a slightly modified feature, we can get the same business impact, but a lot less eng complexity). The rest is about looking out ways to get early feedback (prototyping, hallway testing etc) and challenging weird edge cases. The first few of these I’m seeing a lot around me. 2 - I don’t fully get the question about product people. Also, I spent a good deal of my career working at Skype/Microsoft and Uber, so I don’t think I can give a definite answer. If it helps, at Skyscanner, a smaller startup, I had even more product say as an engineer, than I did at Uber or Microsoft. I suspect everything I wrote assumes an environment where engineers are empowered and close to the product, and data about the product usage/revenue generated. 3 - I’d say have a lot of curiosity on how the product works and how users use it, and generate value for the company. Then you need good communication skills to build trust with the product stakeholders - to understand more about the business, how they think, and to be able to showcase your ideas, prototypes and accommodate feedback for them.
- ThalesX 7y agoI did a little read through again and noted down my thoughts. This is mostly in relation to my view that a single person ... would have trouble, with filling all these roles within the 8 hours given per day and under the assumption that he actually understands them all and is not just winging it. And I do get Sorry for the sarcasm in the writing, it’s who I am and yes I do feel bad sometimes. — > Product-minded engineers don’t settle for getting a specification and jumping to implement it. They think about other ideas and approach the product manager with these. They often challenge existing specifications, suggesting alternative product approaches, that might work better. Do you do this for every backlog item? I have assumptions about all tasks I receive and sometimes believe them to be less than ideally researched. Do I challenge all the time? I feel like that would land me in a bad place with multiple people over time. > When coming with ideas, product-minded engineers don't just get these from thin air. They take the time to understand how the business works, how the product fits in, and what its goals are. This is just a part of the paragraph, there are more ideas about user preferences and data analytics. Business is constantly changing, the product should ideally pivot based on user needs, goals change at least ocasionally. In order to keep this loop going I personally feel like I either have to half ass it and pretend like I understand so we can get the release ready by the deadline or actually do this properly and that feels for me like a full time job rather than a bullet point to do on the side as an engineer. Sure, I can say I look at analytics and talk to users, set up blind interviews and calls all the while following the business moves but in my case I would most likely be an impostor unless this would be a pretty large part of my work. > Curiosity and a keen interest in "why?" Just pasting headline from now on as there is a lot of text. This paragraph encompases the job title of business analyst, project manager and business intelligence. Let’s just assume I do have time in my workday for developer, business analyst, project manager, business intelligence and business strategy. So all the points up until now, I can do cause I am amazing. And not just half ass them but fully get the ‘why’ and understand them all. > They are smooth communicators, making it clear they're interested in learning more about how other disciplines work. I frequently see them grabbing coffee, lunch, or doing a hallway chat with non-engineers. I know I said I’ll paste the title but this one flows nicely. Also, I am obviously a bad communicator but an amazing marketing and sales guy cause I spend the time talking to them about what they do all the time. But this is just fun chat, understanding new domains of expertise, I can squeeze them in my daily 8 hours. > They also start making product tradeoffs, evaluating the engineering impact. They often go back to the product manager, suggesting a completely different feature to be built, given the product impact would be similar, but the engineering effort vastly smaller. Architect, strategy, consultant. EZPZ I am 10x. But it’s doable, probably becomes annoying after awhile but with the time I spent analyzing all my product users and doing reports on them I probably come up with better ideas than my colleagues who work full time on this. > Because they do it all in their head, using their engineering and product insights, they get to valuable conclusions remarkably quickly. Oh, I thought this was based on user data, nvm I just do it in my head. I don’t need no data, I read it once and now my trimatrix quantum brain will just curve fit for the optimal solution. I think my colleagues love me for my mental abilities. > This could be doing hallway testing with colleagues, showing the work-in-progress feature to the product manager, organizing a team bug bash on the beta build, and many other, creative ways. I love how my whole team always has time for my ad-hoc bug bashings. I thought I was the only one with the time needed to handle ~ 10 roles to perfection. > They are continuously thinking:"how can we validate that people will use this feature, the way we think they will?" A little bit of psychology right here, nothing much, will fit right in my schedule, I’m only around 50% filled. > It can take weeks to get enough reliable data to draw conclusions. Even though they might be working on a new project, they make checking on the results one of their top priorities. It's not a time-consuming activity, but it needs that additional persistence from someone wanting to know: how is my work really doing? Oh, just some weeks of daily context switches to check on my baby. No boss, I’m also working on the other tasks for which I needed to do all roles, but I also log and audit the feature. Don’t worry, it’s not a time consuming activity, I just need to: > spend a good amount of time debating hypothesizes and learnings with the product manager and data scientists. It’s ok, I just need to brush up on my data science. 51% filled. Alright. What next, I still have 49% of my daily 8 hours. Oh I know, I’m going C-Level! > What is the business model? How is money made? What parts are most profitable, what parts of the company are expanding the most? Why? How does your team fit into all of this? I don’t need no CEO, CFO, CIO and / or ang form of c-level. I got this guys. There’s something missing though, my 8 hours are filled with so many roles and I am still bored. I know! > Pair with designers, UX people, data scientists, operations people and others, who frequently interact with users. Can’t wait to brush up on my design and UX, luckily I already know Data Science and Operations from my other roles. I’m sure I won’t bother the UX all that much, he probably doesn’t do a lot of stuff anyway cause he’s not a product engineer. — Anyway, I feel real bad for having you on the end of my stick for what is really not a bad article. Just caught me frustrated with some aspects of it and saturated. I think your insights are valuable, a good guide, but maybe a bit too demanding of the role you are tryint to define. So again, I am sorry, I know it’s not the easiest thing to get out there and be exposed to unfounded criticism but these were my 2c. Best of luck!
- todayispotato 7y agoNot OP, but I do all those things at a company with 4 engineers. I have only met a couple (as in 2 or 3) engineers that I estimate would be capable of doing most of those things, but it's not impossible. And regarding 3: both, of course. But he'll probably care more about users in day to day work, as those are more directly relevant to his goals (making a good product).
- ThalesX 7y agoI don’t think it’s impossible either. I think most early stage startup people do a mix of everything there and it doesn’t have to stop early stage. However, I do feel like actually being insightful and competent in so many domains of knowledge is a bit too much to ask of a single role. I’m arguing that there should be separate roles, with different responsabilities, of people that are good in their specific domain and that the process of delivery should take care of mixing their outputs into something meaningful for the customer. Putting my faith in this magic product engineer role that touches all aspects of the company, and expecting that person to really get good stuff constantly seems like a step in the wrong direction to me.
- nevertoolate 7y agoI’d suggest you read the article through the “what if it is true” glasses and start asking questions on HOW you can get there. Thank you for being negative though, it helped me to be positive as I also started soul searching why I couldn’t become one of the great product engineers who tick all the boxes. We have to trust others and be positive, and self confident, not thinking about ticking boxes to prove things to others but with the desire to genuinely help.
- rpedela 7y agoProduct people, regardless of primary background, have to be competent in a variety of skills and experts at one or two to be extremely effective. The job simply requires it. It is possible to be an expert in engineering and be competent in business, design, etc. The blog post is simply describing an engineer who probably could be a product manager/owner if they had the desire.
- fogetti 7y agoSorry, but this is gonna be a kind of rant, so it's very subjective and highly anecdotal. But the post is also very subjective and highly anecdotal so meh I guess. So what I want to say is that I've worked with this kind of person. It was exactly this type of engineer. As a team member he is the worst kind of team player. While everyone is focusing on the actual sprint and the important tasks to be done, he keeps going around to other teams and collecting requirements for things: - which either has been already discussed and estimated before he joined the company but he is ignorant of that fact - which is supposed to be built on just his assumptions and because he is in no position to make decisions by himself he cannot really test his assumptions, and because he needs constant assistance to test his hypothesis he actually takes everyone's time on the team to work on assumptions that has no merit At the same time for example he cannot identify the time when bugs need instant attention and need to be solved immediately so he seemingly cannot be bothered by those lowly matters of bugs and high priority things. And because of his why? why? why? attitude even when the time is short and something has been discussed and written down in details MANY TIMES before, he needs constant repeating of every discussion because he just can't trust anything which was discussed WITHOUT HIM, his ego is too big for that. Not to mention that he asks about product/engineering tradeoffs all the time when no-one, including him has nooo idea what are those tradeoffs, so the only thing he does is casting doubt and postponing decision making. Not to mention that when he walks around for example and tries learning how other teams work, he is basically generating a false hope in people that he will actually deliver something soon. And oh man, couldn't be that any wronger?! Especially when he is in no position to make priorities and hiring decisions, etc, he is just basically playing a game, and this game is called politics. This kind of person many times is just a constant waste of time. And yes, business people love these kind of person because someone finally speaks their language. The problem is that this language and communication is completely broken and misguided. Just like office politics is most of the time. > They'll often spend a good amount of time debating hypothesizes and learnings with the product manager and data scientists That's basically correct, and that's also how I would summarize. Let's call it the `Debate-Minded Software Engineer` instead and then I'll have no complaints. But this is not productive!!! You want to have 10 of these people on your team? In a fast moving startup? Good luck for implementing anything EVER. Also these are the people who can never understand that some people are busier than him. So then they think: OK, instead of waiting a day, they can just go ahead and build something based on their understanding. And then they are watching with horror when somebody tells them to stop it, because there are other higher priority things to do. Also somehow this post equates the product manager to be some kind of superman. If you ever worked outside of silicon valley you will know that even these days there are many companies, I would even say that's the majority of companies, where projects are built and delivered with big upfront design, and there is no follow-up on the release or anything like that. There is a select number of people in the design process and if you are not invited to the discussion, then you will never have the chance to impact the product even the slightest. And one more thing. Since this post is just speculation and it's extremely anecdotal, let me share my anecdotal evidence too. Even when someone looks like the ace that the post describes, my experience is that these people are not that fast! They are either as fast as everyone else, or just mediocre in the technical side of things. So the only way that I saw these people to operate is that they put in extreme hours outside of working hours so that they can get the info, the context, etc which they need to look smart and having insight. And here is the real problem? Why would you or anyone suggest this kind of modus operandi? Isn't most engineers' life overworked and miserable enough? You guys in Silicon Valley have to understand that people outside that bubble in other countries have shitty salaries and no work-life balance, so the incentive to put in extra hours and be the superhero of the company is almost zero, even though WE HAVE TO DO THE SAME JOB ON THE SAME QUALITY LEVEL as you guys in SV. I wish we would stop idealizing these kind of imaginary roles and positions in the industry because this is extremely damaging to our profession. Especially to those people who are not that successful then the post's author. What would be much more preferable to see a post from the same author that he describes in detail why engineers choose not to be like the person he described. That would actually show some humility and actual respect to everyone in the field. We don't need a bullet point list to become something else that we are. What we need though is scaling back and tuning down the voice of people who think that there is one true shiny way of product development.