Building A Software Development Career: My Story (Part I)

Part I: Internal Growth

My first role in tech was not as a software developer. My first title was "Junior Graphic Designer" in a small company of about 40 people.

Within 6 years my role grew to "Lead Developer / Designer" and I eventually left the company after 8 years for a fullstack developer role elsewhere.

In order to grow internally at the first company and prepare to make an eventual jump for a more fulfilling role, I had to first learn a few new things to increase my value.

Below are some key values and specific decisions which led to steady internal growth in my first position. These are steps which took me outside of my comfort zone and pushed my limits; I believe these steps are universal in nature and can be applied to many careers, but are especially relevant to software development and engineering.

1. Don't Settle: Push Boundaries

All websites and applications, no matter how impressive, have something in common: people built them. People no different from you or me. People who worked hard, tried new things, and maybe got a little lucky along the way.

Everything can be created.

"I can't build that" is not a valid excuse working in the modern web. There's an incredible amount of open source projects, tutorials, and blog posts, etc. at our disposal to learn from. Nothing is impossible to create, and breakthroughs happen every day. With time and dedication to learning, much can be accomplished.

If I limited myself to what I already knew, or what I'd already tried and had success with, I would not have grown at all.

2. Stay Informed & Network

This may go without saying for many people, but it's still important enough to reiterate here. For my first few years as a developer (this might sound silly), I did not know there was an actual developer community out there!

I went to community college and made a few acquaintances, but most of us in class were flying solo. There were no real collaborative team dev projects, like you would find in the real world. This experience was not an accurate reflection of real software development, where team integration is a critical skill.

I stumbled on the developer community by accident.

There are a myriad of podcasts and highly-visible software developers out there; find your preferred technology and then search for relevant podcasts. There's a fit for everyone!

Twitter and LinkedIn can be an exceptional place to connect and interact with other professional developers - many of whom have worked on or created the very libraries and packages you use every day. Following people who have made significant contributions to technology is rewarding and very accessible.

3. Automate Yourself: Work Different

I've come across the notion that some developers feel the need to keep themselves employed by overcomplicating their work. The thought is that if they make their work so overly complex, nobody else can take it over and their tenure with the company is guaranteed.

The truth is, that there are countless developers out there who not only can take it over, but they will gladly do so. Over-complicating your work for job security only makes their onboarding a bit more challenging.

I've found the opposite effort to be true: automate yourself.

If you find opportunity to automate yourself out of a task, do it. Don't hang on to doing something just because it keeps you busy or it keeps the company dependent on you. There's more exciting work around the corner to focus on.

In Closing

At the end of the day, it's all about self-improvement and progression. When I found myself working repetitively, or stagnant, I became restless. The solution was typically to get outside my comfort zone, try new things, and learn.

The beauty of a software development career is that it's never stale. New technology and techniques are available nearly every day. There is no shortage of innovation and ideas.

The best software engineers continue to learn and grow, remain humble, and never settle for the routine for too long.

Enjoy the journey!