Confessions of a 50-Year-Old Software Apprentice
2017 was a trying year for me. Don’t get me wrong. I’m in good health and so are all of my family and friends. So no worries on that front. Professionally, however, it has been a challenge. I retired from a 23-year career in finance to move into software development. At age 50, I was hired as an apprentice at Revelry Labs. Yep. An apprentice. A 50 year old software apprentice. Yay me.
So, why did I do this? Long story – but I will make it short-ish.
Always the technophile
I’ve been fascinated by technology since I was in high school. I became a gadget-hound over the years. New laptop? I want it. New phone? Yes, please!
Despite my intense interest, for whatever reason, writing code always seemed really intimidating. But there comes a time where the urge to create something cool is stronger than the urge to own it. It was time to start studying.
After 3 or 4 half-hearted attempts to learn Python, I finally found a course that really worked for me (thank you DataCamp), and I committed to getting it done. Nights, weekends, and early mornings got me through it. I learned a lot, but I didn’t feel like I was progressing fast enough. And I didn’t have a mentor or real-world projects to work on to grow my skill set.
Shifting to software development
At about the same time, my interest level in my finance career was falling faster than a tech stock in 2000 (yes, my market references date me). The business model that had served me well for 22+ years was being disintermediated by market forces and regulatory changes. I felt that I was going to have to do things dramatically differently to rebuild my business. And if I was going to start over, I wanted to start over in an industry that I was passionate about.
So, I had an idea for an app. I didn’t know how to code, but I knew someone who did. I found a tech wizard for a cofounder. My cofounder introduced me to Revelry in order to round out our development efforts. I was so impressed by Revelry’s software skills and the way they approached problems.
The focus was not, “How do we write code to solve the problem?” Instead, Revelry’s process started with,
“What is the real problem you are trying to address? What is the best way to solve that? Let’s write the code that does that.”
Problem solving first, code second. I found that this group of people had serious skills, loved what they did, and solved problems for a diverse client base of startups and established companies. They helped us take our half-baked idea to fully-baked idea, and on to MVP and then into a product, and I loved them for it.
This product was Scandy, and I had started it as a side project. It now has management and developers and is functioning well. But moving full-time into my own company wasn’t an option: I didn’t have any coding experience to make a positive impact.
My crossroads was an interesting one. I founded a software company that I couldn’t work for because I had no software skills.
Enter Revelry’s Software Apprentice Program
So how does one get a job in the tech space at age 50? What kind of technology firm needed someone with years (decades?) of evaluating businesses, managing client relationships, and solving problems? Well, Revelry does.
They have an apprentice program that is designed to take someone with a bit of coding experience and turn them into a genuine software developer. Mindset and problem solving skills are as valuable as coding skills for this position. Match made in heaven. After deep breaths, lots of conversations with my wife (the real heroine of this story), and a boatload of reflection, I made the leap.
Software developer, here we come!
The terrific and daunting training process
I’ve been on the job for just under three months and I’m drowning. I thought I had an understanding of the task I was undertaking, but I really didn’t have a clue. There is SO much to learn.
I’m impressed and terrified at how many nuances there are to each piece of information I manage to digest. I go to bed exhausted and wake up having forgotten most of what I put in my brain the day before. If I think about how far I have to go, I’m terrified.
But to be completely honest, I haven’t felt this energized in years. I’m doing full-time what I thought I couldn’t do. There are no guarantees that I will be a success at this. But I’m excited to be here, giving this thing a shot. Still, it sucks to be drowning.
Once upon a time, I signed up to do an Ironman Triathlon. I had previously completed a short tri (which required less than two hours of swimming, biking, and running). Based on that experience, went ahead and paid a lot of money for the opportunity to swim 2.4 miles, bike 112 miles, and run 26.2 miles. If I thought about it too much (which I did), I would freak myself out. (That is a lot of ground to cover, after all).
After one particularly lousy bike ride, where I wanted nothing more than to puke and then drive home, I forced myself to finish the workout with a run. The run turned out to be effortless. I kept a smooth pace from start to finish, and I caught myself smiling in side view mirror as I approached my car.
I realized that this Ironman journey wasn’t about winning the race;
it was about winning the workouts.
There were so many workouts. So many chances to win, right? A few months earlier, I never would have gotten that far on the bike, much less finished the workout with a run. Yet despite the nausea and the, “How am I going to do this?” feeling in my gut, I managed to find a positive takeaway.
So it goes with coding. Every day is a chance to win – you just have to change your definition of winning.
It’s still all about problem solving
I’ve had SO many frustrations along the way (see the paragraph on drowning above). But after each exercise, whether I succeed or not, I realized that I did manage to learn something.
Sure, I’ve given up on more than a few CodeWars challenges. I’ve invested HOURS on what seemed like a really simple problem only to have to step away. Failure, right? Not exactly.
I spent time reading the language spec. I wrote more code. Another for loop. Another conditional. And I did have a few real insights along the way. I force myself to take something positive away from every exercise, every interaction with code. Every now and then, I figure something out on the first try. Once in a while, there is that burst of understanding.
Hey self: you ARE making progress; it just might be tough to see sometimes.
Always be investing… And revel in victory.
Revelry has an awesome set of core values. I won’t go into all of them. But the one that I take to heart most days is Always Be Investing.
I’m on a winding path of self-investment right now (longer than I thought it would be). I’ve made the decision to step away from one career and invest in another. I’m confident this investment mindset will reap dividends in the future.
And even though I don’t feel it most days, I do get enough of those “Aha” moments that give me the confidence to keep moving forward. I’m better today than I was yesterday.
And the final Revelry core value: Revel in Victory. There’s a beer tap in the Revelry home office. Friday afternoons it comes into play. It is Friday. I invested this week. I had a few victories.
It’s time to revel.