I am currently a Product Manager at a large software company. I have been doing it for 3 years after a career change from sales. I do not have a technical or business degree but have been able to excel at the role. I mostly play the role of the Product Owner on scrum teams but am part of strategic decision making.

I really enjoy the more technical aspect of the job and enjoy working closely with the engineering team. I like to understand how the product works so much so that I have been learning to develop my own software applications on my spare time. I really enjoy this and feel challenged. I am a little bored at the Product Owner role right now. I feel like I have it down and am not learning as much as I could be.

It seems like a common path is moving from engineering to product management but I have been feeling the opposite. What advice would you give to someone in my situation looking to get into a more technical role without a formal background for it? What options are there?

  • What advice do you expect from us? You don't like a role, you know why you don't like it - so what exactly is the question? – Sourav Ghosh May 21 '19 at 13:36
  • 1
    Questions require a goal that we can address. Rather than explaining the difficulties of your situation, explain what you want to do to make it better. – Sourav Ghosh May 21 '19 at 13:36
  • Sorry for the confusion. I rephrased my question to be more specific. – jmacnc May 21 '19 at 13:44
  • 1
    Are you considering further education? – Solar Mike May 21 '19 at 14:08
  • Not considering any more formal education as the cost would likely outweigh the bennefit at this point. – jmacnc May 21 '19 at 14:16

One really important challenge you'll face if you try to move your job title to "developer" is that you'll be moving from a relatively senior role into a junior one. You'll have/surpass many of the skills a senior developer needs in navigating the business, but to be a senior developer you'll need to learn most of the skills a developer uses when making software in a team (which are really important, and hard/impossible to learn by working on personal projects).

This might make it difficult to move into that role with your current employer. You'll essentially be asking for a big demotion. It's important to realise that a junior developer is likely to get paid a lot less than you do now as well (for reference, as a junior developer I earned about 25% of my current salary as a senior developer).

Having said all that, given that you work in an agile shop there may be an opportunity to pick up and work on less complex stories without changing your role when it suits you and your team. You could gain experience that way without sacrificing your salary but you'd be taking on a higher personal workload. That would be something to discuss with your team.


You asked,

What advice would you give to someone in my situation looking to get into a more technical role without a formal background for it? What options are there?

All of the general advice about career changes would apply here, the fact that it's non-technical to technical is just a detail. Make sure you understand the field you're getting in to, pursue education or training to fill in gaps in your skill set, be sure you understand which of your current skills are transferable, and expect to encounter bumps and surprises along the way. And, of course, expect to enter your new career at a level that matches your skills and experience - in other words, you may take a "demotion" to make the switch.

Further, and more specifically for the switch you're considering, keep in mind that there's more to good software engineering than just understanding how the product works and knowing how to code. Software engineers are as much experts in process, structure, and lifecycle management as they are experts at understanding functionality and knowing how to program. This is probably the biggest handicap that people who make the switch informally without education or experience will face - it may seem easy for you to write code that does what it needs to do, but it may seem hard for you to "follow the rules" and write code that makes sense to others, and is sustainable and efficient.

Many latecomers to software engineering end up as "cowboys" who can shoot quick and solve problems, but once they've moved on to their next project, the engineers who inherit and maintain their products end up thinking geez, this is a mess. The way you avoid this is by making sure you're not just focusing on how to write code, but focusing on how to think in a process-oriented manner and consider the overall structure of what you're doing against your employer's goals for sustainability, performance, and maintainability.

  • you're right about the "process, structure, and lifecycle management" skills that all SE's need to know. The thing is that's not taught in schools! It is not a part of most educational curriculums at all. People have to start from somewhere, sometimes that means being "a cowboy" for a while if that's what it takes. As for employer "goals", few would honestly say that "sustainability, performance, and maintainability" were paramount. If the OP wants to do it, he should just get started and not worry about "doing it right" from the beginning. – teego1967 May 21 '19 at 15:07
  • 1
    Yes I agree - you don't need to worry about getting it all right from the beginning, but you should also go in aware of your blind spots. "Cowboys" sometimes don't even realize they're "cowboys" - they believe that they're good at writing code (which they often are) - and business people compliment them on how well they understand the business, yet they're still writing stuff that no one can maintain and which causes unintended issues because they don't have an awareness of their own blind spots with respect to rigor and process. – dwizum May 21 '19 at 15:21

Some remarks, from somebody who's done both jobs (but still loves and does dev).

Make sure your current supervisor knows about your ambition to learn more work skill. Frame it as "more and better skills" rather than "I'm bored." You may get good advice and support from that direction.

Product management / product owner work is really good work. It gives you a broader scope and bigger opportunities to advance than dev work. You have more visibility into customer needs and your business's operations than you will as a dev, in any but very small companies. If product management has become humdrum for you, consider doing more customer interviews, dreaming up new product lines, or whatever. Ask your supervisor for more responsibility. And try to go to a Pragmatic Marketing training course in product management. Your eyes will be opened to the broad scope of product management work.

You're learning development skills. That's terrific. You can also check out online training: Free Code Camp, Udacity, Udemy, the list is long. Some of them have organized sequences of courses leading to specializations like SQL developer, Data Scientist or React developer. You could choose to use your own time to learn, or you could ask for some work time to do it. Whatever you do, get yourself some SQL chops. You'll need to learn some stuff before changing jobs.

If you have the time and money to do a dev boot camp or even get a M.S. degree in CS or IT, that is also a good way to learn a new trade without starting out as a programming n00b.

With product management skills and some developer skills, you'd be a valuable member of a startup or small company. Is that a direction you can consider?

  • I am not fully convinced that I would like to make the switch to a developer. Even though I may be bored now because of my limited responsibilities on the product team, I do very much enjoy Product Management. I have been doing all of my software development learning on my free time and really enjoy that. I will probably keep at it to increase my technical knowledge because I think it's valuable to have no matter what at a tech company. I'm wondering if there is a happy medium between the two roles? Maybe a technical product manager? – jmacnc May 22 '19 at 12:53
  • I do think working at a startup may be the best way to be able to use both my product management knowledge and be involved in development. I do have a project I have been working on that could maybe go somewhere and have been active in the startup community in my area. – jmacnc May 22 '19 at 12:55
  • Go take the Pragmatic Marketing class. Seriously. – O. Jones May 22 '19 at 17:18
  • I have taken pragmatic marketing – jmacnc May 22 '19 at 17:32

Not the answer you're looking for? Browse other questions tagged or ask your own question.