I am a big fun of The Alchemist. It's the book I've re-read the most. The Alchemist is a story of a shepherd boy named Santiago and his pursuit of his personal legend. What's a personal legend, you ask? Your personal legend is what you've always wanted to accomplish. Everyone has a personal legend; sometimes it's clear, other times it's not. Ever since I wrote my first little computer program, using Visual Basic 6, I knew this is what I wanted to do, and this is what I was meant to do: using technology to improve the lives of others.
Some people are great at planning out their life and career. They can see where the puck is going, and they skate towards the spot gracefully. If you were to plot out their career, it'll look something like this.
I am not one of those people. If you were to plot out my career, it'll look something like this.
It has always taken me longer to get to the spot, but I always seem to get there. Sometimes it's by accident; I get there despite myself. To use one of the principles from The Alchemist, I believe the universe conspires to help us achieve our personal legends. I've met people that I needed to meet at the right time, sometimes in the most unexpected places (Hello Twitter). I've gotten an insight that has long eluded me at the time when I'm best able to apply it and voila, a miracle.
Every job I've had has been interesting in some way. My very first job out of college was as a web developer, building websites using classic ASP (Active Server Pages, yeah google it!). I worked with some amazingly smart people and it was here that I had my first lesson, although I didn't realize it at the time. My first manager saw something in me and he went out of his way to be supportive. To this day, he's a close friend, and we've ended up working together at three different companies. He believed in me more than I believed in myself. Despite his best efforts, I was haunted by major imposter syndrome. I always felt like I didn't belong, and security was on their way to escort me out of the building. I felt the best way to address this was to learn hard things. I took C, C++ classes, learnt discrete math, and read many books on data structures and algorithms. Sadly, I never used most of these skills. I jumped from company to company looking to fit in.
After about two years of wandering in the wilderness of tech, I found my fit in a small boutique consulting company in Cambridge, MA. The founder was a brilliant MIT electrical engineering grad. Since it was a small company, I volunteered to do everything. If we needed a FreeBSD application server built, an OpenBSD firewall configured, or a SQL Server or Postgres database server maintained, I was on it. I even spent one thanksgiving weekend moving our servers from one colocation site to another. I loved my job! I couldn't wait to get on the train every morning, commute 90+ minutes on a good day (MBTA, Green Line, Red Line) to get started every day. Most of my friends were focused on a single technology and they couldn't understand my "lack of focus". I didn't care! I was having fun, remember? Unfortunately, our business model was flawed. It depended on one large customer in the digital publishing space that ended up cutting back production after 9/11. Work started to dry up, and after two pay cuts, it was time for a change.
I decided to join my old manager at a small startup that was trying to shake up the semiconductor resell market. Unfortunately, the idea didn't pan out, and after a year, I was laid off. About a month after my son was born, I found myself unemployed. I decided to take a more stable job and got into a major financial services company. I took a six-month contract, mostly to put food on the table while I figured out my next steps. I landed on a small team, just three developers, challenged with building a budgeting and forecasting tool. We had three months to build the solution, which was going to be used for two budget cycles, before the company moved on to a larger enterprise package (the application ran for fifteen years; I just learnt it was recently retired). We put in a herculean effort and delivered the project on time. I still don't know how we pulled this off, but we did. We won a prestigious award for outstanding service. Given our small team, I had to wear many hats on this project. I focused on building the middle tier and the backend while my teammate built out the UI. My experience with the "full stack" started to pay off. I could call and talk to DBAs about specific things that we needed to improve the app. I could get on a call and talk to networking and security teams about all our crazy requirements. This team was amazing, I quickly realized the value of working with people that you respected and that respected you in return. My manager realized my value and quickly converted me to a full-time employee. I worked for this team for five more years, building a couple of line-of-business applications.
After the 2008 crisis, I was intrigued by the bond market, and I decided to look for a job on a bond trading floor. I happened to know someone working on the floor, and they let me know when a position opened up. There was one little challenge: the position meant having to code primarily in Excel/VBA. Yes, you can build complex applications in VBA. I had built simple Excel macros, but now I would have to build complete applications in VBA. I was hired after a round of interviews and got to work building some really interesting applications. If you ever want to learn more about Repos (Reverse Repurchase Agreements), let me know. For the rest of you, Repos are the grease that keeps the financial markets flowing smoothly. Again, my friends thought I was crazy leaving the world of .NET to code in VBA. I didn't care! I enjoyed the challenge and it turned out to be very rewarding. I loved the high-pressure environment. Sitting next to a trader and watching them book a billion-dollar trade on a ticket I built never got old.
I spent 12 years at this company, building applications that helped improve the day-to-day workflow of a lot of people. I met some wonderful colleagues and made lifelong friends during my time there. In 2016, I knew it was time for another change. I followed one of my close friends to Microsoft. My journey, the different technologies I had learnt and used, and the high-pressure environment I was used to working in, all prepared me for a wonderful career as a Cloud Solution Architect. I love what I do today. I didn't plan it this way. I just kind of stumbled forward and at times followed my gut instinct.
What did I learn, and what would I advise my younger self? Find an area you are willing to invest time in. In my case it was programming. Put in the time, show up every day, and grind it out. The passion will follow. Find a manager that believes in you. They'll encourage you and push you to be your best. Find teammates that you respect and that respect you. If you are fortunate enough to have all these factors line up at your place of work, then congratulations, you are well on your way to living out your personal legend. If not, keep following your instincts. It really does all work out in the end, if you keep pursuing your personal legend.