To me, one of the most interesting aspects of my career in the software business has to do with my progression across different functional areas in the business, at many different firms. In my 20+ years (!) in this business, I’ve worked as a software engineer (8 years), technical software consultant (4 years), and product management/marketing (8 years), in both individual contributor and management roles.
This has given me perspective, and (I hope) some wisdom that I can share here. As such, I’m kicking off this thread, in which I’ll explain the hows and whys of software companies, aimed at a technical audience. Thinking back to my first few software engineering jobs, straight out of college, I had no idea how software businesses could or should have been run. While I was very fortunate to have been hired into my first software engineering job by an amazing technical team lead, who provided excellent technical mentoring, I was not so lucky on the business and management side. This context is something I learned over many years, at many different companies –by watching what did and didn’t work, and asking a lot of questions. Along the way I formally augmented my knowledge by obtaining an MBA (while working full-time as a product manager, with a baby at home….I don’t think I slept for 2 years).
Hopefully this series will be illuminating and useful to people currently working in the software business, who want to be able to understand the complete business context of their workplace, be able to better contribute in a more meaningful way, and professionally learn and grow (how can you argue with that?)