Job offer accepted! 20K more than current salary - thanks FCC! (Story of how I did it)

I just accepted a job offer as a software developer! Free Code Camp, along with many other things, helped me get to this point. In the job I will be using skills I learned and/or improved in the freeCodeCamp curriculum. I will also be using Ruby on Rails.

I detailed much of my journey in a Medium article. In this post I will fill-in some more details.

After I had decided to switch careers to software development and before I started my bachelors degree in the field, I was talking to a friend about the idea. He had recently started a Ruby on Rails course and asked if I wanted to complete it with him. I decided to hold off starting my bachelor’s degree for one month so I could do that course with him. (You can start at the beginning of any month at the school I attended.)

After completing the Rails course and the Bachelor’s degree, I continued to learn and build up my portfolio. I earned the FCC front-end certification and I started the other FCC certifications. I completed another Ruby on Rails course that was better (and cheaper—free) than the first one.

I continued making projects. I volunteered to develop web projects for different organizations. This included a craigslist-like site that I created for a church using Ruby on Rails. I also got some paid software gigs and developed a mobile app for a regional newspaper using Ionic.

In January I started creating and posting JavaScript training videos 5 days per week on my own YouTube channel. This was also around the time that I was rejected to speak at a tech conference. As described in my just-linked-to article, this lead to posting videos on the FCC YouTube Channel and publishing an article (see first link in this post—now up to 135K views) based on one of my conference talk ideas.

Another thing I started in January was 100 Days of Code where I committed to coding an hour per day and posting about it every day on Twitter. (This is the part of this post where I try to re-frame a negative thing as positive.) I quietly gave up on 100 days of code (this is the negative thing) so I could focus more on the YouTube training videos and preparing for job applications (this is the positive part). I can definitely say I was still putting in an hour per day on things related to coding but those things were often not actually coding so I stopped posting about it on Twitter.

One of the non-coding activities I was doing was cold-emailing software developers and asking if I could meet up for coffee. I knew I wanted to move to Grand Rapids, MI to get a job, about a 2 1/2 hour drive from where I lived. I was able to meet up with 10 different people in Grand Rapids, four of whom ran software companies. I took multiple days off work to drive over to Grand Rapids and I often scheduled back-to-back meetings. I was also scheduling meetings with people involved with organizations I wanted to volunteer with after I move.

Here is an actual e-mail I sent to get an idea of what I said in my cold e-mails. I always started with something personal that showed what we had in common.

I don’t know you but we have a lot in common: you taught high school and then switched to software development and I currently teach high school and am about to switch to software development.

I’m currently a special education teacher in Saginaw but I’ve always done some coding on the side and I’ve spent all my free time in the last year learning software development (including getting a Bachelor’s degree in the field).

Anyway, I plan to teach until the end of this school year and then move to Grand Rapids to get a software job. (Grand Rapids is close to family.) I want to get to know some developers in the area and learn about the industry in Grand Rapids. Can I buy you a cup of coffee some time so I can ask you some questions about your experience as a software developer? I’d be interested to learn about your transition from teaching to software.

If you are willing to meet up with me, I will let you know the next time I’m in Grand Rapids so we can try to schedule something.


Beau Carnes

I had a pretty good success rate with this approach. Also, sometimes people I met with introduced me to other people. One of the company CEOs I met with introduced me to another CEO that I was able to meet with.

I would find the people to cold-email either by finding their names on the website for software companies I was interested in or by searching LinkedIn for 2nd and 3rd connections in Grand Rapids that had the word ‘software’ in their profile. I never contacted through LinkedIn; I would find their e-mail address somehow. If I had lived closer, I would have met with a lot more people. The idea to cold-email people came from a great article by Haseeb Qureshi about how to break into the tech industry.

Besides the one-one-one meetings, I also went to a few different meet-up groups. Again, this was limited because of the driving distance.

In one of my meetings with a company CEO that was set up completely through a cold-email, the person offered to set up a mock-interview at his company for me. The mock-interview was a great experience and I learned a lot—plus I was later invited back for a real interview! Another one of my meetings also led to an interview. However, that one was with a friend from college (the first time in college many years ago…) so we already had a relationship.

While the job I accepted did not end up coming out of one of these meetings, I expect that those connections I developed are going to continue to be beneficial in the future. Also, the interviews I got through the meetings could have impacted the job offer I accepted.

Another thing I did in preparation for applying for jobs was to make sure my online presence looked good. I updated LinkedIn, GitHub, and a website that shows projects I have developed.

I also updated my resume. To make my resume stand out, I included a section called “bad references” where I quoted some less-than-flattering comments about me from random people on the internet. I also included links to the original comments. The idea with the ‘bad references’ was that it would make it more interesting to read and that when people clicked through to see the comments in context it would end up reflecting positively on me. Here is the actual resume I used (minus my phone number). Feel free to copy the format. :slight_smile:

The goal was to get multiple job offers at once to give myself greater bargaining power. This is one of the many plans I’ve had throughout this process that people have told me would not work out. Well, it did work out. I applied for maybe 50 jobs in one weekend. I also sent e-mails to different people I had met with letting them know I was looking for a job. I ended up booking 5 interviews in the span of three business days.

Keep in mind that I would have loved to work at any of the companies I interviewed with. I wasn’t just trying to get offers to bargain with but was seriously considering all the positions.

All the interviews went well. It was very helpful that I received a job offer of 60K/yr at my first interview. (A really good pay for my region and experience level.) Two other companies upped their potential offer by 15K after hearing about my first offer. One company ended up deciding that they wanted me but couldn’t afford to get close to matching my original offer. There were two companies that were interested but could not get an offer to me before I wanted to make a decision. I received a second offer for 65K and more vacation days than the first offer. The first company agreed to match that offer after I let them know I’d rather work at their company.

Maybe I could have gotten more if I had not revealed I would rather work at their company. But I’m still very happy with the offer and super excited about the company! Also, the people I have met there are awesome people and I’m looking forward to getting to know them better.

A few weeks ago a recruiter told me I’d be lucky to get 55K/yr in the area with my experience. Yet another example of people suggesting I set more reasonable goals. I’ve gotten good at ignoring that type of advice.

I ended up negotiating one last thing before accepting the offer. My wife thought this was silly but I asked for a different job title. Originally the title was “front-end web developer”. After hearing about my interest and experience with the back-end and Ruby on Rails, the job description was changed to include more of those things. Also, I will be working with a small group of developers and the idea is that I will be working on some core features. I’m only slightly embarrassed about this but they agreed to change the title of the position to “Senior Software Developer”. That title definitely gives me something to live up to. And it will look a lot better on my LinkedIn profile. :slight_smile:


Wow thanks for sharing your great story
I am student at faculty of veterinary medicine and I hope to start learning programming


can full stack developer ( who learned FCC languages only and had full stack certification here ) create softwares or what additional languages he should learn to create softwares?


nothing like a good ‘rags to riches’ story :smiley:

thanks for sharing and kudos and congrats!

virtual high five


In the FCC back-end certification you create full web apps which are a type of software. So you don’t need to learn any additional languages to create software. It really just depends on what kind you want to create. Different types of software require different languages.


thanks for your reply

Great job @beaucarnes!!! Sounds like you had a solid process and found a great outcome! I’ve seen your contributions to FCC for a while in addition to your efforts to pursue software development! Congratulations and thanks for sharing this story! I’m sure this will be an inspiration to a lot of campers here.

Congrats man. This is really inspiring. I hope to land my own job in the next 6 months.

1 Like

Congratulations for awesome job!

Amazing news, good luck with your new job! Very inspiring

1 Like

This is so inspiring thanks for sharing congrats and enjoy your journey.

1 Like

Thanks for sharing your experience! I’m in a similar position, working in public schools and learning how to code in the evening with FreeCodeCamp. Javascript has my head all turned around but hearing stories like these helps keep me motivated!

1 Like

Wow! Congratulations, great job! Thanks for sharing your story.

1 Like

Thank you for sharing your moving story, I enjoyed reading it and you inspires me today. Congratulaitions, all the best!

Congratulations and thanks for sharing!

Wow, thanks so much for sharing your story, @beaucarnes! This is very inspirational, especially as I am now starting my own job search. Also great to see a fellow Ferris alum having success in the field – congrats!

Awesome that you went to Ferris too!

So awesome to read this story! Definitely encouraging!

Wow Beau, I’ve watched your JS videos on YT and kinda look up to you and your success. Very interesting to read this post, I thought you’d been a developer for decades!

Well done, there is hope for me then ha :slight_smile: