Q&A
Navigating Career Choices in Software Engineering
The rapid pace of change in software development doesn't just affect the tools and technologies engineers use--it also shapes the career paths they follow. From deciding when to make a strategic job move, to choosing between consulting and in-house roles, to weighing leadership opportunities against staying hands-on with code, modern software engineers face a wide range of career-defining decisions.
In his upcoming session at VSLive! Las Vegas in March, "Navigating Your Career as a Software Engineer," longtime Microsoft MVP and Principal Consultant at Xebia, Allen Conway, will explore the critical choices software engineers encounter at every stage of their careers. Drawing on more than 20 years of experience across both corporate and consulting environments, Allen will share insights to help developers evaluate their current roles, identify growth opportunities, and align their professional paths with their personal and technical goals.
"This session allows folks to reflect on their career, and which direction they may choose to take it using an array of data points."
Allen Conway, Microsoft MVP, Principal Consultant, Xebia
Whether you're just starting out, mid-career, or at an inflection point looking toward leadership or specialization, this session is designed to help you reflect, recalibrate, and move forward with greater clarity.
Ahead of the session, we caught up with Allen to discuss the unique challenges and decisions facing developers today--and how to navigate them with intention.
VisualStudioMagazine: What inspired you to present a session on this topic?
Allen: My two decades plus experience in both corporate app dev and consulting has allowed me to have a diverse insight on work experiences that I feel valuable to share and help others. Some get so ingrained in their current situation they might not be able to, "see the forest for the trees," and this session allows folks to reflect on their career, and which direction they may choose to take it using an array of data points. These data points are what I help the audience see and evaluate on their own.
You mention the choice between consulting and corporate app dev--what is one concrete day-to-day difference engineers should expect if they switch from corporate to consulting work?
I always like to say if you get the 7-year itch at 18 months, consulting might be for you! Consulting companies are typically the backbone of your career, but the experience allows working with an array of different companies, domains, people, and technology. It's much faster moving and changing, and some prefer this structure of working. However, there are many advantages to working for a single company, like linear growth potential, consistency, steady technology stack, and a narrower path that's predictable.
For someone early in their career, what is a single clear signal that it might be the right time to make their first job move rather than staying put longer?
Unfortunately, many companies view an out of school hire as a 'junior developer' indefinitely and it can be difficult to shake that reputation. However, after a few years 'Company B' views that same person as a "mid-level software engineer." This in combination with stagnating responsibilities are some key factors to notice if it's time to explore something different.
When you look back on your 20+ years in the industry, what is one career decision you'd make earlier if you could, and why?
I may have pivoted to more a formal software engineering design, lifecycle, and execution a bit earlier than I did. It was difficult to see at the time, and I was learning a ton wearing a lot of different hats, but I also wasn't making or designing software the way the wider industry was doing, and this was an important growth stage in my career. Going to conferences, reading books, and networking with others helped me see the big picture that I couldn't see in a vacuum.
For engineers debating between a leadership/management path and staying hands-on with code, what is one practical self-assessment question you recommend they ask themselves?
Moving to a leadership position must be an eyes wide open decision based on the enjoyment of big-picture thinking, relationship and people management, and helping others grow. If these all sound intriguing and exciting, then it might be time to explore a leadership position. However, if is strictly motivated by title, compensation, or ego these are not drivers to leadership and ultimately yield poor leaders. There is an organic nature for leadership and it's not for everyone nor is it the liner path from technologist to leader. There is nothing wrong with remaining technical and hands-on long term, and I help attendees see the difference and help with this self-evaluation.
You talk about evaluating both hard and soft skills--what is one often overlooked soft skill that noticeably accelerates a software engineer's career progression?
'Adaptive communication,' is a key soft skill and not always understood or used well by very technical people. The ability to pivot to dialog with a Junior Engineer and understanding their position and how to articulate basic topics, vs. presenting to stakeholders, upper management, architects, or even C-level leaders requires a very different tone, strategy, and delivery. This ability to 'know your audience,' and be able to communicate is extremely powerful and usually yields a reputation greater than your title might reflect.
When technologies are changing so quickly, what is one simple routine you personally follow to keep your technical skills current without burning out?
There's an organic element to this career as a software engineer or technologist that yearns to learn so it's not usually forced. However, reading and absorbing new information from the community will keep you in tune with what's new and valuable. This can be following social media posts from the major technology companies, OSS providers, MVPs, and leaders, or going to conferences and hearing about new technology and networking with others to see where the winds of technology are blowing, to doing online training and tutorials to keep your hands dirty with technology. All of these are excellent means to stay current.
After attending this session, what is one specific action you hope an engineer will take in the next week to move their career in a more intentional direction?
Reflecting on where you are today and asking yourself, "where do I want to go with my career?" I strive to get attendees to use the data points they learn about to evaluate their current situation and see what changes from the very small to more impactful they can make to improve their career and happiness. Sometimes that evaluation can yield that nothing at all needs to change and everything is great! It's just important to self-reflect to make this assessment.
How can attendees learn more about this topic, and prepare for your session?
This session is about Human Factors in Engineering so just show up to listen and interact with your questions, no preparation needed!
Note: Those wishing to attend the session can save money by registering early, according to the event's pricing page. "Save $300 when you register by the Early Bird Savings deadline of Feb. 13," said the organizer of the event, which is presented by the parent company of Visual Studio Magazine.
About the Author
David Ramel is an editor and writer at Converge 360.