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
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
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.
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.