In the fall of 2000, a co-worker placed a Team In Training marathon brochure on my cubicle chair. Having never jogged more than a mile, I was about to toss the brochure when the marathon location caught my eye: Honolulu! My love for Hawaii overrode all rational thought. That afternoon, I signed up for a race I fantasized would end at a finish line framed with palm trees and a white sandy beach. Spoiler alert: did I finish the race? I did. But what was far more interesting – and valuable – than just crossing the finish line was all the learning I did to get there.
Before you think, “Oh no, not another ‘The journey is the reward’ story”, please keep reading; I promise your reward will be something useful.
Sixteen years after running in my first (and last marathon), I now find myself in a race to become a top-notch front-end engineer. Unlike the marathon, my success in this race means ensuring that it never ends. While my measures of success are vastly different, my learning processes from foot race to tech race are remarkably similar. Here are a few of my notable lessons in common:
Learning is fluid; mastery is a moving target.
After two months of training, I felt fairly confident about my ability to finish a marathon. Then came the agony of learning how to run uphill, and how to adjust for hard paved roads that replaced soft dirt trails. Near the end of my training, just when I thought I had endured all conditions, I jogged 18 miles in an incessant drizzle that chilled me to the bone. When I flew to Oahu in December, I knew I could run uphill on asphalt in the chilly rain. The race began at 5 in the morning, with the temperature already at a humid 70 degrees. My path to the finish line was anything but linear. Similarly, my route to becoming a front-end developer has been no “shortest path algorithm.”
As I began my front-end training, I recognized that my goal of becoming an “expert” in my field is an elusive one. Front-end engineering is an ever-changing landscape, with new frameworks, libraries and languages emerging constantly. My expertise will only ever be momentary; there will be a steady stream of new and improved technologies I will need to learn to continually enhance my skill set.
I recently completed a front-end class at Thinkful’s boot camp and started a Ruby on Rails course at Code School. I’ve really appreciated UserTesting’s generous education allowance. It’s allowed me to take classes, purchase books, and attend conferences – all in support of my ongoing technical training.
Knowledge is power, but find a mentor.
Because I was a first-time marathon runner, Team In Training paired me with a seasoned mentor. Every weekend for four months, she greeted me at the start of each practice run, made sure I had enough water and energy gel, and offered advice on topics that ranged from how to stretch properly to how to prevent chafing. She jogged beside me at the beginning of each run and met up with me at the end.
For the long-term development of my professional career, I’m relying on the benefits of having a mentor to support my continuing education. Particularly in taking online classes, which can be a solitary activity, it’s difficult to stay motivated and mark progress if there is no one to notice it. Thinkful classes provide an online mentor to review my code and answer my questions every week. This continual guidance inspires me to demonstrate steady progress.
Stay in the race.
At mile 20, I stopped to stretch my throbbing leg muscles. My hair and clothes were drenched with sweat, and my eyes stung from sunscreen. A vast 6.2 miles remained between that finish line and me. I sat down in the shade of a beautiful banyan tree and contemplated staying there forever. What got me going again? I convinced myself to view this final segment as just another “short run” and focused on placing one sore foot in front of the other. I finished the race in 5 hours and 1 minute, which translated to a pace of running 11.5-minute miles, unremarkable for a first-time marathoner. Post-recovery from my severe exhaustion and soreness, I came to understand that my real victory was not a measure of hours and minutes; it was the immeasurable reward of learning how to challenge myself to endure and persevere, and to recognize success as a process.
As a front-end developer, the finish line in my learning will always be ahead of me. My challenge on this path includes sorting through competing technologies and methodologies to stay current in my field and to make well-informed decisions in my job. There will be detours and pauses. Evaluating competing technologies can be laborious, and there may be some investments of my time that won’t pay off, but the ultimate rewards could be substantial in enabling me to make meaningful contributions to UserTesting’s technology base and product road map. I’d call that kind of progress a big win, even without a stopwatch or a tropical fanfare.