The Self-Taught Developer
How I became a web developer in 5 months
Updated:
Before I get into my story, I want to preface this article with a few things. I am typically a shy and introverted person. I am not the kind of person who openly discusses my achievements and successes, especially when it comes to finances. I don't like bragging or boasting, and this article is taking me way outside of my comfort zone.
My primary reason for writing this article is to help inform, inspire, and motivate those of you out there looking to learn how to code, especially those of you who are self-taught. I wish I could have read a story like mine when I was first learning to code over six years ago. I always want to make sure I am 100% open, honest, and transparent.
I am currently 35 years old and did not learn how to code until I was 29. So no, you are never too old, nor is it ever too late for you to learn anything... especially code.
Background
Before learning how to code, I had all kinds of jobs. I have been working since I was 15. I worked as a busboy for a few restaurants while in high school. I worked in retail, at a CVS in a shopping mall (one of the worst jobs ever!), and in real estate for over 6 years. I had a pretty good job/career in real estate until the entire economy collapsed in 2008. I was living in Florida at the time, and the real estate market there took a particularly devasting hit.
The 2008 economic crisis was one of the best things that ever happened to me. I took a good look at myself, my life and did some soul searching. Seeing how real estate was not coming back for a long time, and I didn't honestly enjoy it all that much, what was I going to do? I figured I would go back to college and get my bachelor's degree in hopes that the economy would bounce back after those four years in school. I was 24.
In case you are wondering what I did during those six years between high school and college, I worked and played in a band. Music was my life. I had been a musician since I was 13 or 14 years old. Going back to school seemed daunting and dreadful. I hated high school. I was bored all the time and never really interested in any of the subjects I was being taught. Also, math was my worst subject and still is to this day. You don't need to be a math wiz to learn how to code! I wish someone had told me this earlier, but I digress.
Being a musician, I thought I would apply to a music school to study what I loved more than anything. Only one school came to mind, Berklee College of Music. I told myself that going to college would only be worth it if I could study at Berklee. I didn't want to go anywhere else and wouldn't have accepted any other college. Berklee is the best there is. If I was going to spend four years of my life in school while getting into a whole bunch of debt, then I was going to go to the best of the best.
It was the only school I had applied to, and to my surprise, I was accepted. The reason why I was surprised is that I was self-taught in music too. I never had a private lesson or a guitar teacher. I couldn't read music, I didn't know any scales, theory, or any of that stuff... but I could play. I had been playing in bands for several years and had played countless shows up until that point.
Reality Check
So I packed up my car and moved to Boston to go to Berklee. Those four years were some of the most incredible years of my life. I graduated with a Composition degree, which basically means I learned how to compose 'classical' music. This is not exactly a high-paying in-demand skill these days, but I didn't care. For me, it was the best program/degree to get the most out of the school, and I don't regret that decision. However, I knew once I declared my major in composition, I would most likely have to fall back on my IT skills.
I was always interested in computers and taught myself how to fix them while in high school. I really just did it out of fun & curiosity. I also broke my computers all the time and couldn't afford to pay anyone to fix them, so I just figured it out, thanks to the internet.
After graduating, that is when reality really set in. My first student loan payment came, and it was well over $1,000. I had graduated with around $115,000 in student loan debt. I basically had a mortgage, but no house. That was a sobering experience. Naturally, I panicked.
I needed a well-paying job as I worked for various production companies and made a little over $30,000 a year. I was also living at home with my parents and was about to turn 30.
The Bootcamp that never was
What first got me interested in programming was a computer game I used to play called DayZ. It is an online multiplayer game where you try to survive from other players and zombies. All good games have zombies in them. I eventually decided to rent my own server to host my own version of the game for others to play on.
One of the coolest aspects of the game was that it was a "mod." This means it was built on top of another game, Arma 2. So I could install various other mods/plugins that would completely change the functionality of the game. I had no idea how to code, but I found all of these various articles and YouTube videos that showed me how to modify the game. I copied the code snippets, pasted them in the right places, and it just worked! I had no clue what I was doing, but I found it fascinating this was even possible. That was the first time I experienced the power of programming.
I did some searching online to learn how to code and came across a Bootcamp in Boston called Launch Academy. I went to their open house, filled out an application, and to my surprise, I got in. I have no idea if this was a big deal or not, they probably accept pretty much anyone, but it felt like a big deal to me. Then another reality check... the cost!
The program was three months or so and over $12,000. There was no way I could afford that! Nor was I willing to get into even further debt on top of all of my student loan debt. I tried to negotiate with them but got nowhere. Then I had an idea...
What if I put myself through my own Bootcamp? I mean, these people say they can teach me the skills I need to get a high paying coding job in three months, so why can't I just do this myself. I have taught myself IT and music before, so why not coding? So that is what I did.
My jobs working for production companies were notoriously slow from the end of the year into the beginning of the year. So, I had a few months where I wasn't really working anyway. I took full advantage of this 'downtime' and got to work. I spent a good 6-8 hours every day, seven days a week learning HTML, CSS, JavaScript, Ruby, and Ruby on Rails. The Bootcamp had given me a couple books and let us know what we would be learning, so I just searched the internet for resources to learn all of those technologies.
I read Shay Howe's book for HTML/CSS and Chris Pine's book for Ruby. I don't remember which books I read for JS or rails. I was also taking several courses on Udemy. I bought every Ruby on Rails and JavaScript course I could afford. I bounced from tutorial to tutorial, course to course, and wasted so much time. I had no idea what I was doing. I wish I had a mentor or someone who could show me the proper order of what to learn and when. I really needed some kind of curriculum, but I just had to figure it out.
My first job
I was insanely driven and dedicated to learning how to code to get a better paying job, move out, and pay off my debt. After 3 months or so, I started getting freelance gigs on eLance, which doesn't exist anymore. I think it is now called Upwork. I had zero experience doing web development, so I worked basically for free. I made some money. I charged like $50 for a website or something crazy like that. I didn't care though I was getting real-world experience and building my portfolio. I didn't care if the quality wasn't excellent, because what do you expect for $50? Don't get me wrong though, I worked my butt off for those clients. I went above and beyond to try and deliver the best product I could. It wasn't about money yet. I just needed the experience.
Five months later, I decided to try and apply for some junior developer positions. I had no idea what I was getting into and figured that I could get some practice interviewing. I took the interviews as a learning experience, as well. When someone would ask me something I didn't know, I wrote it down and looked it up later.
I eventually applied to a music company in Rhode Island. Here is my cover letter and resume
You will notice in my resume that I just have the years for my experience and not the months. This was intentional. I started learning to code in December of 2014. 😏
I got the job. I was offered $55,00. Here is the offer letter. To be honest, the only reason I think I was hired is because of my strong music background. I was a terrible developer and didn't know what I was doing, but my music skills got me in the door.
This is an important thing for new people trying to break into the industry. Use what experience you do have to try and get into tech. You may have a lot of experience in retail, restaurants, education, whatever. Try to get a coding job in those fields first. People looking to hire junior developers know you don't have great coding skills, so leverage the skills and experience you do have.
Getting a coding job is not easy, even though the demand is through the roof for developers. You need a way to stand out, as any company hiring a junior developer is taking a pretty significant risk. They know you don't have what it takes to solve complex problems and that you will need a lot of support at first. However, they hope you will grow out of your 'junior' shell in a reasonable amount of time to really start contributing.
Your number one priority as a junior dev is to learn as much as you can from the more experienced devs around you. Then you need to get that 'junior' out of your job title asap. The next jobs are so much easier once you have some real-world experience under your belt. The first one is definitely the hardest, at least in my experience.
Job 2
After working for InMusic for a couple of years or so, I began working for an agency based in New York. I was still living in RI at the time, so this was my first full-time remote gig, and I loved it! Working remote is fantastic, and I wouldn't have it any other way now. However, I don't think remote is a good idea for your first job. You should try to find a company local to you so you can get first-hand experience from other devs in person. You can do it remotely if you want. Still, I think you get so much more experience and value out of being with other devs, face to face, especially when you are just starting out.
I asked them for $80,000, which was $20,000 more than I was making. I got a $5,000 raise after my first year at inMusic and was promoted to a front-end developer. They offered me $72,000 and told me after my first year, they would pay me $80,000. I said yes and put in my two weeks.
Today
Today I am a senior software engineer for a travel insurance company in Rhode Island. I work remotely from Pennsylvania. I make just shy of $100,000. I have been there for over two years now. So in five years or so, I went from making just over $30,000 to almost $100,000. Not only has my salary increased significantly, but I have much better benefits, more time off, etc. The best part is that even with all of my debt, and my wife's for that matter, I can support my family so my wife can raise our two small children.
Plus, I really love what I do. I am crazy passionate about this stuff. It is incredible to make a good salary in a high demand field, doing what I love.
Wrap up & Advice
My story is simply that... my story. Yours will be quite different. I hope that reading my story has encouraged and inspired you. Yes, you can do this! You do not need to be a math genius or have any prior experience. You just have to want it! If you are in this solely for the money, look for something else. You will not be happy making more money doing something you hate, trust me! It's not worth it.
If you really want to do this, then nothing is stopping you. There are more free resources out there than ever before. This site is only one of them. I am trying to take all of the experience I have and teach it to others. I wish I had someone like myself to help me out along the way. I would have saved so much time, money, and effort if I had a mentor. I hope this site, my books, courses, and YouTube videos will do that for you. You can always reach out to me on Twitter or email me howtocode@pm.me.
Cheers,
Robert