I typically write about my various interactions around technology in an effort to learn while forcing myself to share knowledge to other readers. I personally find this approach the best way for me to learn since to share you must be confident on the topic at hand. This post however is a mini self reflection of two turning points in my career and I challenge you to self reflect on your career to locate the turning points you might have in your career. If you can not find one you need to take this as an opportunity to find your own turning point as it forces you to become better and transform to be a better version of yourself.
Thinking I Knew It All
After college I got my first job as a developer at a small company building financial software for credit unions. I was working there for a couple years increasing my skills from VB6, VB.NET, and eventually C#. Life was grand I was in a small ecosystem with a limited presence with the online development community (it was 2003-2008 after all). We still received binders of MSDN discs and assumed we knew it all. The team was thriving and we were slinging code with visions of big home grown systems that solves numerous needs for our credit union clients. This all came crashing down when this company was sold off to a competing company and I was forced to new experiences.
Being Humbled and Not Knowing Anything - Turning Point 1
At this new company I was around familiar faces, but integrated into the new company. A contractor was brought into the shop to assist in building core components of a high profile project. His name was Khalid Abuhakmeh and reflecting back this was the first turning point my my career that shot me down a different path. He is one of the most passionate developers I had the opportunity to work with professionally and asked many questions of
- Why is this system built this way?
- Why is there no unit testing (could you even test this!?!)
- Why did you roll your own
X? (where X is data access, logging, security, etc)
- Did you ever hear of using
Having someone around you that is passionate about development, encourages learning through pair programming, and reinforces all the ideals of development was something that helped shape me today. These questions and openness to teach introduced me to a concept I was not familiar with in my traditional development mind. This directed me down the path learning, reading, teaching, and complete self improvement as I wanted to answer all his questions and improve the code base. What we did prior was by not any means bad, but we can strive to be better. Flash forward a months of questioning and improving on came the transition to a new opportunity at Members 1st FCU
Growing and Learning
A few former coworkers were already at Members 1st and dreams of software development danced in their heads of what could be based on what we have done in the past (and doing it "right" this time around). My former supervisor was already working there and when the call was made three of us came roaring over to do what we do best, build credit union software. We did indeed build software, we built core components to interact with the data processing system, integration points, web services, and eventually a Bill Payer system. Development life was good again, we were building software, sharing new found inspiration pushing forward always striving for that ideal.
Progressing Forward - Turning Point 2
After living in this comfortable space for a coupe more years my partner in crime working at Members 1st FCU left for a new opportunity. This left a void (turning point 2) that needed filled to continue to move forward in our goals of building the best credit union software possible. Through a series of events and support from my supervisor and team I was able to rise above this deficient and take learning, leading, and empowering to the next level trying my hardest to build up the team. If you are faced with a difficult situation that makes you feel uncomfortable seize that opportunity and do what it takes to rise above it. As scary as it was this allowed me to mature to the next level in my career.
To improve you need to be humbled and seize opportunities when they present them to yourself. I personally feel you need to repeat this process continually throughout your career.