The standard career path for a senior software developer is usually a transition to the level of department or team management—generally working more with people and projects than with code and technologies.
Let’s agree that being a specialist in your field makes it easier to be a good leader and boss, but you shouldn’t take it for granted. Sometimes, we face huge disappointments here, because it turns out that the job requires a completely different set of skills and talents, and the responsibilities can be much less attractive than the title of the position would suggest.
On the other hand, you may get the impression that working as a senior developer or tech lead is a dead end and nothing interesting is gonna happen here. You feel that this inner strength, the need to grow and get better that has brought you here, is still driving you. You need adventures, challenges, news, attractions… you just want to keep enjoying the things you do, not just work and get things done.
I’ve had the opportunity to meet many highly skilled programmers who experienced the same dilemmas. They realized very quickly that a change of job boiled down to moving Fruity Thursdays to Tuesdays. Then what?
For several months, I’ve been working as a product specialist—that is, to put it simply, this non-technical person—in the consulting department at STX Next. I should probably write a separate article about it myself, similarly to my colleague Piotr Podgórski.
In addition to many strictly product-oriented aspects, thanks to which I can have a great time and pursue my goals at our company, the greatest pleasure for me is working with Solution Architects. These are the programmers who got to the expert level and punched right through the ceiling.
You can see that they feel very comfortable here, breathe deeply, look at software from a perspective that is completely different to the one they had while working on projects. They also have the potential for incomparably greater personal and professional development.
I assume that over all these years you spent doing projects, you’ve seen enough clients who made the same mistakes that you could do nothing about, because you simply had no influence on the most important decisions.
Now imagine that not only are the clients taking your expert opinion into account, but are even demanding it!
It is you who will largely decide on the selection of technologies, frameworks, architecture. You’ll make recommendations on how to specifically develop a given project, which best practices to use when writing code, etc.
It seems to me that this is what brings the greatest satisfaction to our Architects: decision-making and a sense of agency. That’s the most exciting part of our creative work.
When you take a look around the project room and see that everything can be done more efficiently, cheaper, nicer and that you’re dying to change things you can’t really change—consulting will allow you to finally prove yourself.
Projects usually last from several weeks to ten months or more, sometimes even for years. It’s common knowledge that developers can experience the problem of the so-called project burnout.
For some, this stability, calmness, and predictability that comes with a long-running project can be a goal or sometimes a necessary stage of development. However, in the long run, this problem is something that managers and HR companies across the industry lose sleep over.
You know like no one else that, contrary to popular belief, programming is an activity that requires creativity. Monotony or lack of new stimuli and problems to solve can take away joy, no matter how much you’re making.
You may feel that spending a few months doing one project and experiencing, for example, 7 project worlds in 4 years is not enough. Well, in product consulting you will get to know 7 such worlds a week!
Every time new topics come up, I see this twinkle in the eyes of our Architects—a new project to be audited practically every day, a new technology to be checked out, a new product to be analyzed. We literally sit in a toy store for mature programmers and people keep throwing us new gadgets from everywhere. The adrenaline never drops.
Sounds great, doesn’t it? Wouldn’t you like to give it a try? I can’t assess your expert knowledge or tell you how many technologies and how well you need to know—but it doesn’t matter.
If you feel like you’re spending too much time writing code and not enough time thinking about it—about how to create and write it—working as a Solution Architect is something that you absolutely should give some thought to.
Do you want to look at software more often not only from the IDE’s perspective, because you realized that coding is just a problem-solving tool? Do you understand the importance of user experience and know that technology without a well-defined product strategy is a journey into the unknown, through thick fog, without a map or a compass?
If so, then working in product consulting would most likely be an ideal job opportunity for you and a huge step forward. Actually, it may even be a layup!
Solutions architecture allows you to work hand in hand with product and design experts who know magical ways to make your clients provide you with a clearly defined vision of products, definitions of problems, and clear requirements—then convince them to work with users and their needs, not just solutions.
It’s also an opportunity to participate in workshops, various event-storming sessions, or all kinds of design sprints and take active part in the exciting phase of product discovery.
I personally greatly appreciate the developers’ contribution as “the tech guys” in creating a product strategy, since without their knowledge and experience, I wouldn’t be able to create a complete product.
That’s why I love working with Architects—because we’re like yin and yang. Seemingly different, we represent two sides of one coin, but still work together toward the same goal: doing good things right.
The way I see it, consulting is a very good way for developers to “capitalize” on a long-term investment in billions of lines of code, thousands of hours spent doing projects, hundreds of sprints, and being an old hand at working with clients.
It allows you to finally draw on your rich experience and shape new products, set the standards for their creation, and develop in those non-technical areas that have no less impact on the success of projects than technology in which you are already an expert.
Jarek Feith has 7+ years of experience working with developers in startups, software houses, and companies with their own digital products, as well as 14 years of experience in design and product roles. He’s a UX design lecturer at CodersLab who’s passionate about basketball, product design, and strategic product thinking. Currently working at STX Next, he relentlessly spreads a user-centered approach among our clients.