Episode 72 – How to get a graduate job in coding, with Jason Swett

Hello and welcome to the 72nd episode of the Graduate Job Podcast, the UK’s most popular careers and jobs podcast. The sun has been shining here in London, but it’s been no excuse for me not bringing you the brightest and the best job search advice. This week’s episode is an international one, as it came about from an email from Piers a listener in South Africa who wanted to know how could he change focus after a law degree and get a job as a coder, with no previous coding experience. My guest bringing his expert wisdom on the matter is Jason Swett from over in Michigan, USA, who is a developer, trainer, and the author of ‘Angular for Rails Developers’.

In this episode we delve into Piers question about getting your first job as a coder with no experience, exploring questions such as how do you get started, what programming language should you start learning, and what resources should you be looking at. We also explore how long it will take you before you are ready to start applying for a coding job, how to stand out in your applications and what you can expect throughout the interview process, and why you need to start applying for your first coding job before you think you’re ready. If you have ever thought about a career in programming and coding, then this is the episode for you.

As always all links and a full transcript can be found in the show notes at graduatejobpodcast.com/coding.  From there you will also find links to all of the other 71 episodes which cover every aspect of getting a graduate job, from help with interviews, assessment centres, to specific companies, to finding a job you love. Check them out and you won’t go far wrong.

Don’t forget, also make sure you check out www.graduatejobpodcast.com/subscribe which links to how to subscribe on Itunes, Spotify, Youtube, and by email. So something for everyone there.

You can download the podcast to your computer or listen to it here on the blog. Additionally, you can subscribe via iTunesSpotify or Stitcher radio.

And don’t forget to check out today’s sponsor who are our friends over at CareerGym.com. Career Gym is the number one place for you to undertake all of your psychometric tests which you will face when you apply for a graduate job. No matter what graduate job you apply for you’re going to have to face some type of verbal reasoning, situational judgment, and working style tests. You can practice these at CareerGym.com. Use code GJP to get 20% off all of their tests!

MORE SPECIFICALLY IN THIS EPISODE YOU’LL LEARN ABOUT:

  • How to get a job as a coder and programmer without a degree
  • Learn the best coding language to use as a first time coder
  • Discover the top resources to use if you are starting out as a coder
  • Uncover why you need to start applying for your first coding job before you think you’re ready
  • Discover the key mistakes people make when applying for a graduate job in coding
  • What sets successful coders out from the crowd when applying for their first graduate job
  • How to ace a technical interview for your first job as a coder

SELECTED LINKS AND RESOURCES MENTIONED IN THIS EPISODE:

  • Check out the ‘How to Get a Graduate Job’ step-by-step online course at https://howtogetagraduatejob.com/
  • Don’t even think about applying for graduate jobs until you’ve read my free guide, ‘The 5 steps you must take before applying for graduate jobs’. Click here NOW. It will completely change the way you apply for jobs!
  • Would you like a free 30-minute video coaching call? Simply select a time that works here https://calendly.com/gradjob/ We can go over your CV, application, or anything that you are struggling with.
  • Assessment Day – One of the top providers of psychometric tests. Click HERE and support the show
  • Career Gym – Use code GJP to get 20% off all of their tests!
  • Job Test Prep – One of the top providers of psychometric tests. Click HERE and support the show
  • Jason’s Blog
  • Jason’s website
  • Jason’s website on Angular on Rails
  • Hacker News
  • Jason’s weblink tip – DHH Ruby on Rails
  • Jason’s book tip – Dale Carnegie ‘How to win friends and influence people’. Click HERE to buy now from Amazon and help support the show.

Transcript – Episode 72 – How to get a graduate job in coding, with Jason Swett

Announcer: Welcome to the Graduate Job Podcast, your home for weekly information and inspiration to help you get the graduate job of your dreams.

James: Hello and welcome to the Graduate Job Podcast, with your host James Curran. The Graduate Job Podcast is your home for all things related to helping you on your journey to finding that amazing job. Each episode I bring together the best minds in the industry, speaking to leading authors, entrepreneurs, coaches and bloggers who bring decades of experience into a byte size weekly 30 minute show. Put simply, this is the show I wish I had a decade ago when I graduated.

And a warm welcome to the 72nd episode of the Graduate Job Podcast, the UKs most popular careers and jobs podcast. The sun has been shining here in London, but it’s been no excuse for me not bringing you the brightest and the best job search advice. This week’s episode is an international one, as it came about from an email from Piers a listener in South Africa who emailed me at hello@graduatejobpodcast.com and wanted to know how could he change focus after a law degree and get a job as a coder, with no previous coding experience. My guest bringing his expert wisdom on the matter is Jason Swett from over in Michigan, USA, who is a developer, trainer, and the author of ‘Angular for Rails Developers’.

In this episode we delve into Piers question about getting your first job as a coder with no experience, exploring questions such as how do you get started, what programming language should you start learning, and what resources should you be looking at. We also explore how long it will take you before you are ready to start applying for a coding job, how to stand out in your applications and what you can expect throughout the interview process, and why you need to start applying for your first coding job before you think you’re ready. If you have ever thought about a career in programming and coding, then this is the episode for you.

As always all links, and a full transcript can be found in the shownotes at graduatejobpodcast.com/coding.  From there you will also find links to all of the other 71 episodes which cover every aspect of getting a graduate job, from help with interviews, assessment centres, to specific companies, to finding a job you love. Check them out and you won’t go far wrong.

Don’t forget, also make sure you check out check out http://www.graduatejobpodcast.com/subscribe which links to how to subscribe on Itunes, Spotify, Youtube, and by email. So something for everyone there.

And just before we get to Jason let’s have a little message from today’s sponsor who are our friends over at CareerGym.com. Career Gym is the number one place for you to undertake all of your psychometric tests which you will face when you apply for a graduate job. No matter what graduate job you apply for you’re going to have to face some type of verbal reasoning, situational judgment, and working style tests. You can practice these at CareerGym.com, as well as numerical, and abstract reasoning tests. They are all produced by testing experts, and exactly the same as the ones you will see in the real graduate job tests. You can just practice them as you want, or you can do them in exam mode, under time pressure, and they come all with detailed explanations and solutions, and you can track your progress and see how you compare against your peers.

Now it’s never too early to start revising for psychometric tests, as you might not get much notice before the test so you want to make sure that you’re ready to go. If you’re applying for a graduate job will have to do them, so pull your finger out now and start revising straight away to make sure you don’t fall at this first hurdle. I’ve been recommending this site for years to the clients I coach and it comes very highly recommended. What’s even better is if you use the code GJP, you will get 20% off of all of their tests. You can’t say fairer than that. So, head over to http://www.CareerGym.com that’s CareerGym.com and use the code GJP to get 20% off and start practicing today.  Now, on with the show.

James Curran: This is James Curran. You are listening to the Graduate Job Podcast, and we have gone international in the quest for the best job search information you can find. Now, this episode has come about from a listener request. Piers has got in touch from sunny South Africa by emailing me at hello@graduatejobpodcast.com. And he asked, “How can you learn to code to the level of getting a job without doing a degree in computer science?” An excellent question. Well, there was only one person to ask. He is a freelance web developer all the way from Michigan, U.S.A. He runs the website, SixFigureCoding.com. Welcome, Jason Swett, to the Graduate Job Podcast.

Jason Swett: Thanks, James.

James: It’s good to have you on the show, Jason.

Jason: Good to be here.

James: Before we get into the detail, would you like to, maybe, tell listeners a little bit about your background and your experience?

Jason: Sure, so my name’s Jason Swett. I’ve been a software developer for quite a few years now since the mid-90s as a hobbyist, and then professionally since the early 2000s. And currently, I teach software developers the skills to get better-paying and more enjoyable jobs, and I also teach people who aren’t yet software developers the skills needed to get their first coding job. And by the way, I myself do not have a college degree.

James: Ah, super. I would like to get into that over the course of the interview. In the beginning, I’m just going to lay my ignorance on the table. Coding, per se, isn’t my thing, as in university, I managed to get the second lowest mark in the year when we did a module on Java programming, which was just even the basic “Hello World” had me stumped. I think I got 20 out of 100, and the big “Please see me” from the lecturer on the exam. So, apologies in advance if I butcher all the different terms of Python, Ruby, and all the rest of it.

Jason: No problem.

James: So, let’s start at the beginning with learning to code. So, starting with, maybe, Piers’s question. How can you learn to code to the level of getting a job without doing a degree in computer science? Firstly, is it possible?

Jason: Good question. So, just to lay a little bit of background, the material that they teach you in a computer science curriculum has very little to do with what you would actually do as a programmer. So, I mentioned a minute ago that I don’t have a college degree. I did go to college for a while, and I was actually really bad at the academic part of it also. It was kind of an interesting pattern where I would get 100% on most of the assignments where you would actually write a program and then take it in and get graded on it, get 100% on those, and then I would fail the tests. So, the written tests where they would drill you on all the theory stuff. So, I could do the work. I just couldn’t take the tests.

But, in any case, the kinds of things that are taught in computer science are like algorithms, and compilers, and all that kind of stuff, and the work that you do as an actual web developer is totally different stuff. So, by not having a computer science degree, I don’t think you’re actually behind from any practical sense.

James: Yeah, because, ultimately, the companies, all they care about is that you can do the job. They don’t care about the superfluous stuff that you might have learned along the way. It’s just a question of, “Can you do the job?”

Jason: Exactly. So, that leaves the question, still, “How do you actually gain those skills on your own?” and the way I did it, and the way every software developer did it, who I know, is they just taught themselves. There’s a number of different ways you can do that, but the way that I recommend is that you start a project and make sure it’s a project that you can maintain interest in over a long period of time, and just work on that same project for a really long time.

And what’s best is if it can be a project that’s not just something you never show anybody your project, but something that other people will actually use because that will give you the kinds — you know, the projects you’re going to be working on at work, those are real products that support businesses. People are actually using those products to do their jobs. So, as close to the simulation your personal project can be to that, the closer your experience will be to what you actually need to get a job.

James: So, maybe let’s break it down then. When you say project, what do you mean by that? And do you mean more like a website, or some sort of computer tool? What do you mean?

Jason: I’ll give you an example of something I’ve done in the past, and this is an example of when I was using a certain set of technologies and I wanted to transition into using a different set of technologies. There’s kind of a chicken-egg problem where nobody wants to hire you until you have experience, but you can’t get experience until somebody hires you. So, this is a way around that problem. So, around 2009, I was using PHP, and I had been using PHP for several years. For people who don’t know, PHP is just a programming language, very popular programming language.

I was doing a little bit of research on my own time and I discovered a different language called Ruby, which I actually found a lot more attractive for certain reasons. So, I said, “This language is so cool. Compared to Ruby, PHP seems really yucky, and so how can I transition my career into using this different technology?” So, I started doing some side projects, and the one that kind of lasted and the one that ended up launching me into my first real Ruby job was scheduling software for hair salons.

So, just a real brief back story for how that came about was my wife got a job at a hair salon, she had never worked at a hair salon before, and when I visited my wife at work and saw the scheduling software that they were using there, I was really surprised by how low-quality it was. It was really difficult to use, it was really ugly, all those things, and I thought, “Well, I can probably build something better than this,” and before I dove into building it, I checked around and looked at the competing products, and they were all just really bad. I was like, “Okay, I can do something better than this,” and so that’s where that idea came from. And I did get some actual salons to use the product, and so that was a lot more realistic experience than if I had just built something and just used it solo.

James: Okay, I really like that, and you mentioned a few of the different languages there, so PHP, Ruby, talked about Java before, and Python. Which is the best languages to, maybe, start coding in at the moment? So, if you got someone who’s just going to start coding straight away, where would you point them to go?

Jason: That’s a good question, and there’s no single answer, and the answer will change over time. Because, the best languages and the best technologies to learn are ones that are at the intersection of technologies that are in demand and technologies that you enjoy working with. So, you can kind of get a feel for which technologies are in demand by visiting certain websites.

There’s one that’s pretty well-known. Not pretty well-known; it’s almost universally known in the programming world. It’s called Hacker News. And if you Google Hacker News, you’ll find it. In this sense, “Hacker” doesn’t mean like hacking into systems. It just means “hacker” as in programmer. That’s a different meaning of that world. Anyway, you can go on sites like Hacker News, and Reddit. There’s programming subReddits, and you can kind of get your finger on the pulse of what’s in demand. You can also look at job ads to find out what technologies are in demand.

So, that’s good, and in my career, I’ve taken a little bit of a mercenary approach where I teach myself languages that I know are in demand, because that’s how you’ll get a job and that’s how you’ll get the higher-paying jobs. But then, like I mentioned also, it’s not enough that it’s just in demand. It also needs to be something you enjoy working with, because if you’re just teaching it to yourself for the money, but you actually don’t like it at all, then you’re going to have a pretty tough time.

James: Okay, and you mentioned some of the links there with Hacker News, and listeners, you’ll be able to find a full transcript of the episode today along with all the links that Jason and I mentioned at graduatejobpodcast.com/coding. So, we talked about some of the different languages to start with. When you’re teaching yourself, Jason, I understand starting with a project, where would you then begin to start teaching yourself? Is it just a question of going on YouTube and looking at some of the videos there, or going on Reddit or Hacker News? Are there any other resources you’d recommend as good places to start, or is it more formalized courses of people teaching people how to start?

Jason: That’s a great question. I can tell you how I’ve done it in the past and how I do it today. So, first of all, web development is really complex in the sense that there are a lot of layers. So, when you build a web application, that’s going to involve — let’s say it’s a Ruby on Rails web application. Ruby on Rails is a web development framework. So, you’re going to have – “at the bottom of that stack” is the term we use – at the bottom of the stack, you’re going to have Linux, which is an operating system, then you’re going to have a database management system like PostreSQL, then on top of that, you’re going to have your server-side language, which in this case would be Ruby, and then on the front end, you’re going to have HTML, CSS, JavaScript, and maybe even other technologies like Twitter Bootstrap.

Don’t worry if you don’t know what any of those things are. I just list these things to illustrate the point that there are a lot of different things involved, and if you try to learn all those things at one time, you’re crazy. So, you should just start with one thing, and especially if you’re brand new to programming at all, just start with one of those things and gain a little bit of competence and then introduce the other ones bit by bit.

So, let’s take Ruby for an example. I think that would be a pretty decent one to learn first. The way I would do that, if I were starting today, is I would just Google “Ruby Hello World”. So, Hello World is just kind of the term for the simplest possible program. The origin of that is like you might have a program that says, “Print Hello World.” It’s just a one-line program and it prints Hello World onto the screen.

So, that’s what I would look for first, like, “How can I write just the absolute simplest Ruby program possible?” and once I’ve accomplished that, then I’ll do something ever so slightly more complex, and then I’ll do it ever so — the problem that I see over and over with people who are new to programming is they will try to take on too much at once, and when they’re writing a program, they’ll try to write the whole program and try to run it and it doesn’t work, and they don’t know why. The way to go is just to do a little tiny bit and get that to work, and then add a little tiny bit more, get that to work, and so on, and that same approach works with writing a single program and just teaching yourself programming, in general.

James: And would you recommend the little and often approach. I imagine someone’s listening to this, they’ve got a job, so they’re just doing it in the evenings where they can maybe do an hour a day or something, or is it something where you just need to really immerse yourself in it full-time, 10 hours a day, to get up to speed? What works better, from your experience?

Jason: You can do it a little bit at a time. Obviously, you’re going to get out of it what you put into it. So, if you have the freedom to just throw yourself into it completely and do it all day every day for months, then you’re going to get pretty good, pretty fast. But, if you’re like me where you have a family, kids, and you have to earn an income and stuff like that, you don’t have very much discretionary time to do other stuff. So, that’s just the way it has to be. You’re not going to get there as quickly, but you don’t need to have a huge amount of time available in order to make progress.

James: And people often talk about 10,000 hours to be an expert at something. You know, in your experience, I know it’s a big generalization, it’s going to depend on people’s skills and stuff, but back-of-fag-packet, rule of thumb, how long are you talking from beginner to how many hours you think you need to put in to be ready to put yourself into the job market?

Jason: That’s a great question. So, there’s kind of two different questions. One is like how long before you really get competent, and two is how long should you wait before you start looking for a job? I would think that it would take you at least a few months to get to the point where you can kind of do stuff, and it would take you, probably, at least a year before you’re really like what I would call comfortable. But, I don’t think you should wait that long to start looking for a job. The reason for that is getting a job takes a lot of time, and you’re going to have to put months, probably, into your job search, and so you want to get your feelers out there and stuff like that as early as you possibly can.

And here’s what your experience might look like in your first few months of your job search: the first thing I would recommend to do is I see so many people with an email address that is like my email address, jason.swett@gmaill.com. That’s not the email address that I would use to respond to job ads with, because that just screams I’m an amateur. If you get a business card from like a hair stylist or something like that that has a Gmail address, you’re like, “Is this really that legitimate of a place?” So, first of all, get a domain for yourself that’s like — I have jasonswett.net, and the email address I might use is jason@jasonswett.net. That looks a lot more legit that jason.swett@gmail.com.

Anyway, that was a little bit of a digression, but what I would recommend after you take care of that step is go on the job boards. So, Craigslist, there’s this great site, weworkremotely.com. Go on those sites and just find anything that you think might be a remote chance of something you could do. And in the very beginning, you’re going to be unqualified for pretty much anything, but don’t worry about that. Just apply to stuff anyway, and this will get you into the habit of going through these job boards and filtering through and finding good jobs to apply to.

And then what’s probably going to happen is, through some miracle, some company’s going to be pretty desperate, and they will email you back and they will ask for an interview even though you’re not very experienced yet. And what’s probably going to happen is they’re going to interview you, and you’re going to completely crash and burn, and you’re not going to get the job.

But, that’s not the point. The point is to start getting practice doing these technical interviews. Because, if you’ve never done coding before, then you’ve never done a technical interview before, and you don’t know what it’s like. The earlier you can get that practice and the earlier you can get familiar with the kinds of questions you’re going to be asked in those interviews, the better off you’re going to be and the sooner you’re going to get a job.

James: Excellent. We will come back to the job application and interview process later in this show. But, maybe just winding back a bit to the project. So, you recommended starting your own project as a way just to build your skills and also showcase your skills. So, imagine I started off getting stuck into Ruby on Rails. Aside from going out and finding businesses that I can utilize these skills with, what other ways are there to get the project out there so people can have a look at it? Another question: would you recommend that you do encourage people to have a look at it, and kick the tires, and have a poke-around, and that sort of stuff?

Jason: Yeah, definitely. So, to the extent of the project you build is useful, it’s going to be easy or hard to get traction with it. If you build something that’s of interest to a very narrow set of people, then obviously, it’s going to be a little tougher to get people to come look at it and to get well-known for it. But, in any case, the way that I would recommend going about that is, right from the beginning of your side project, start writing about it.

So, I had mentioned a minute ago, get a domain that’s like your first and last name dot com. Or, if you have some different idea, just get a domain and put a website up there. What I would recommend is just a really simple WordPress website. WordPress is just a platform you can use to do some blogging. And just write about what you’re doing. When I do my writing, I will usually finish my blog post, hit publish, and then I’ll go over to Reddit and Hacker News, and I’ll promote my blog post at both places. Usually, the result is nothing happens, but every once in a while, I’ll put a post out there and I’ll get a huge influx of traffic, like thousands of people coming to my website.

So, that’s what I would recommend doing there, and it’s definitely best if you make your blog in such a way that it’s a cohesive body of work where it’s kind of all about one thing. A mistake that I see people make a lot is they have a blog and there’s no common thread that runs through their posts in their blog. Therefore, if I find a post there that, let’s say, it’s about JavaScript, then I look at their other posts, and there’s one about PHP, and there’s one about Linux. It’s like, “Okay, well I’m interested in JavaScript right now.” It’s better if the whole site is about JavaScript. Then, I know that every post I see there has a potential to be interesting to me.

James: That’s a really good point. So, I would definitely link to jasonswett.net so people can head on over and check out your articles. There’s a lot of articles on there, Jason?

Jason: There are a lot of articles on there. Jasonswett.net is just kind of where I put my personal ramblings. There’s not a lot of super-interesting professional material there. Just as a quick side note, the one thing that I do write a lot about there is something I call my “Entrepreneurship Journal.” So, I write about a monthly post talking about that kind of stuff.

James: I look forward to reading about that. So, just thinking, then, about moving towards applying for a job. How do people know when they’re ready to start applying for work? I guess one of the things that holds people back will be that they always think they just need a bit more skills and a bit more time before they’re ready for the job market.

Jason: Right, and most people wait way too long. My advice is just to start way before you feel ready. If you decide on a Monday that you think you want a coding job, then I would say, on Tuesday, start hitting the job boards. And don’t tell yourself that you’re not ready. Let yourself get interviews and let the people interviewing you tell you you’re not ready. And then they’ll not only tell you that you’re not ready, they’ll tell you why. So, that’s how you’ll know where to improve.

Because, a really important thing to understand is that the skills that it takes to be a successful developer, to do the job is a different set of skills that it takes to get a job. And so, you need to start practicing your job search and your interviewing skills early on, and that’s a thing that’s a totally separate set of skills to practice than your actual programming skills.

James: Yeah, and picking that apart then, what is it that companies are looking for from their coders?

Jason: Good question. First of all, everybody wants to hire a senior developer with 10 years of experience.

James: But, they don’t want to pay for it.

Jason: Right, but actually, in the programming world, people are willing to pay very good salaries for really senior-level developers, because everybody’s short-staffed on senior-level developers. But, the thing is there are very few, relatively speaking, senior-level developers out there, because the problem is that everybody good is already taken. So, often, companies will take what they can get.

But, the main thing that employers are looking for, in my experience, is a good personality, people who are easy to get along with, and people who seem coachable and teachable. Because, if you have those qualities, and if you have kind of a good technical mind also, you can learn the particular technologies that any employer uses. If the opposite is true, if you’re a really good programmer, but you’re impossible to work with, then that’s going to be a problem. And employers understand that, and so they’re more looking for people that they can get along with who can learn.

James: So, thinking then about the application, what would you recommend listeners bring to the fore in their applications when they’re applying for coding jobs?

Jason: So, the mistake that people make when they respond to job ads, in my experience, is that they will send a really long-winded email that gives all kinds of details about their job experience, and they’re saying, “You should hire me for all these reasons,” and they really try to sell themselves. And the thing that they are misunderstanding is that the job of a job ad response is not to get hired. The job of a job ad response is to get a response.

So, when you write that email — I don’t work at jobs anymore. I’m self-employed. But, I still use job boards, and when I send an email on a job board, it’s just like two sentences. I say, “Hey, I’m Jason Swett. I’m interesting in potentially working with you. I could talk at the following times. Does this time, or this time, or this time work for you?” and I don’t even attach a resume.

Because, the way that I’m approaching this, the way that I think about it is the more information you include in your email, the more reasons you give them to disqualify you. And if there’s very little information in your email, then they don’t have anything to go off of, and they say, “Well, we have this response from this person. For all we know, they’re amazing, and so we should at least talk to them.” I’m not sure if I’m right or wrong about that, but that’s the way that I think about that.

So, again, the job of that first email is just to get a response, with the ultimate goal being that you get on the phone together, get on a Skype or whatever it is. And then at each step, the goal of the interview is to either get a second interview or to get an offer. But, don’t try right from the beginning to sell yourself. Just try to get on the phone.

James: Okay, that’s an interesting approach. I’ve not heard of that one before, but it obviously works. In the initial email, do you link to anything? Do you link to your website or previous examples of work, or it’s just, as you mentioned, “I’m available at these times. Let’s speak.”

Jason: So, this can open up a whole ‘nother can of worms, which we can get into now, or later, or whatever, but in my emails, I have a certain email signature, and I’m just going off of memory here, but I think at the bottom, it says, “Jason Swett, author, Angular for Rails Developers,” that’s an e-book that I wrote. So, “Jason Swett, author, Angular for Rails Developers, former panelist on the Ruby Rogues Podcast,” and then it has a link to, I believe, angularonrails.com, and then my phone number. So, I don’t put any links in the actual body of my email, but every email that I send has those, what I call, authority pieces in signature.

James: Definitely, and they’d just have to read that and they’ll get the demonstrative authority with each of them. So, that’s a really good point. But, I guess listeners who are starting out new aren’t going to be able to do that.

Jason: Right, and so that’s why that side project is important to get started on because you could use that as an authority piece. Really quick note that I forgot to mention a second ago, when you respond to a job ad, pay really close attention to the instructions in the ad. Often, they will say you need to respond with a very specific subject line or something like that. Just by following the instructions, you’ll already be in the top 10% of applicants, which might sound hard to believe, but it’s true. Because, I’ve been on the other side of that, and I would put really simple numbered instructions in the job ad, and 90% of the people would fail to follow what’s really simple instructions. So, if you could just do that, you’re already in the top 10%.

James: Yeah, and listeners would be rolling their eyes at that, thinking, “Oh, that’s so basic. I would never do that.” But, like you said, 90% of people do. If you can’t follow the most basic instructions, then what good are you going to be? We mentioned it very briefly earlier, the technical interview. So, for people starting out in coding, as you mentioned, they won’t have gone through this before. Could you peel back the cover and tell us what exactly goes on in the technical interview and what they might face?

Jason: I’ve been to technical interviews where they ask some really detailed technical stuff, and I’ve been to technical interviews where they don’t talk much about tech at all, and it seems like there’s been a shift over time, and it seems like, more recently, people are moving away from the really intense technical drilling, and what they want instead is they want to get a personality fit, or what they call cultural fit, and then they put you through some kind of exercise.

The most recent time I did this, I talked with the CTO of a startup, and we didn’t really talk about — we talked about high-level technical stuff, but he didn’t ask me about any sort algorithms or anything like that. It was just very high level. And then the next step after that was I did a session with their lead developer where we did a screen sharing and he had me write some code in front of him, and that lasted about an hour. That’s more of the model that I’ve seen most places move to.

James: You mentioned you’ve been on the other side of the interviewing table. So, if you were interviewing at a company and someone had applied who had not any previous coding experience, what sort of questions would you be probing them on?

Jason: Well, I’d be curious why they want to get into coding, and I’d be curious what they’ve done. Because, I think a lot of people are aware that coding can be a very lucrative profession, and that may be their only motivation, or they might just actually really enjoy it. But, I wouldn’t want to see somebody that has not put any effort in on their part. So, I’d be curious to see what they’ve done.

Because I’ve encountered a lot of people. You know, I go to local technical meetups and stuff like that. There are a lot of people who show up to meetup after meetup and they seem to claim that they want to get a coding job, and then it takes them years to actually do it or they never do, or whatever, and that’s just because they’re just not putting in the effort. So, I want to see what are you doing on your own without anybody telling you to, what kind of projects are you working on? That’s the first thing I’d ask.

James: You mentioned technical meetups there. How important do you think networking is at the initial stages of looking for a job?

Jason: It’s definitely very helpful. So, it’s one of the — so, let me say this. There are several things you can do that can be really helpful in your job search. You don’t have to do all of them in order to be successful. The more of them that you do, the higher your chances are that you’ll find a job sooner. But, again, you don’t have to do all of them and you could kind of dial it in to your personality and to the kinds of things you’re comfortable with.

So, the meetups that I’ve gone to are there will be between five and 100 people depending on the meetup, and the format is usually that one to four people will give some kind of technical presentations. Usually, these presentations are five to 30 minute apiece, and then after the presentations are over, we all just kind of hang out and eat pizza and stuff like that.

If you attend those meetups, it’s obviously going to be more helpful than if you don’t, and if you attend those meetups regularly, then that’s obviously better than sporadic. What you really want to do, what you’re wanting to get out of these is relationships. So, I would definitely recommend going very regularly, and when you go, actually talk to people. A lot of programmers don’t have the easiest time in the world with this because programmers are not the most sociable people in the world, usually, but it’s important to go, and talk to people, and make friends, like that. It’s a little bit easier if you’re a programmer who’s not super-comfortable with that kind of thing, because everybody else there is a programmer, pretty much.

And if you’re coming from an outside profession, you might be kind of intimidated, but I don’t think you should be. Those kind of groups are usually really welcoming in my experience.

James: Yeah, and there’s the perennial stereotype of the geeky programmer that you see in films and on TV that has a lot to answer for.

Jason: So, that’s one level of helpfulness if you just go, but even better is if you go and you actually give presentations. This is another thing where people wait too long. They see people giving presentations, and they’re often really impressed by the level of knowledge of the presenter, and they think, “Well, I couldn’t do that. I’m not an expert,” but you don’t need to be an expert in order to give an effective presentation. All you need to know is you need to know something about the thing that you’re talking about that the people in the audience don’t know.

I’ve given a lot of talks where it’s something that I had never used a week prior to the talk. I just went into it and gained a little tiny bit of experience, and then I went and talked, “I tried this technology and here’s what it was like,” and never have I ever had anybody say, “Jason, you really shouldn’t have been up there. You’re not qualified to give a –” that’s never happened. So, start giving those talks before you feel ready.

James: Yeah, and no matter what field of work you’re in, no matter how long you’ve been doing it, people always have the impostor syndrome that someone’s going to come up and tap them on the shoulder and say, “Get your coat,” so embrace it young. You only have to be one page ahead of the people in the room in the textbook to be an expert compared to them.

Jason: Exactly.

James: You mentioned networking and also having the sort of social skills and putting the effort in as things to separate the unsuccessful from the successful. Are there any other characteristics, in your experience, you see successful coders doing that other people might not?

Jason: Well, it depends on your definition of success. So, you can talk about that in terms of being a good programmer, or you can talk about it in terms of being financially successful, or maybe there’s even another way that I’m not thinking about right now. But, good developers, and by that, I mean people who are good at programming and they’re valuable employees and stuff like that, good developers are constantly educating themselves. I read somewhere that the average developer reads less than one technical book per year. So, again, easy ways to get ahead of 90% of other people, just read like two technical books a year and you’re ahead of most people.

So, reading technical books, attending local meetups, again. Only a very small percentage of people who are employed as programmers actually attend those meetups, and an even smaller percentage give presentations. So, again, really easy way to get ahead of most people. Also, attending national conferences, that’s a whole ‘nother level because there’s a really high bar — not a really high bar, but a higher bar to attending those conferences. You have to buy the ticket, pay for the flight and hotel and stuff like that.

So, what you’re going to find is if you go to those conferences, you’re going to find really high level people who are really serious about their careers, and those are places you can go and learn a lot a lot faster than you could otherwise, and again, you’ll form lifelong relationships there. And lastly, I’ll say that good developers care about what they’re doing. That’s one of the main differences is they actually care about the quality of their work.

So, that’s talking about kind of professional success. Monetary success is a lot simpler. The difference between financially successful developers and the ones who aren’t is the financially successful developers have sales and marketing skills. What I mean by that is a job search is a sales and marketing activity, and I don’t think most people realize that, but it’s totally true, and the developers who get paid more aren’t necessarily the ones who are better. It’s the ones who have better sales and marketing skills.

James: So, just following on from that then, thinking about the job application process, how could people improve how they sell themselves in the interview itself and their skills?

Jason: Good question. So, a lot of people are really averse to the word “sales”, and they’re repulsed by the idea of selling themselves, and I think the reason for that is when most people think of sales, they’re thinking of bad sales. So, sales is really nothing like sleazy, or inauthentic, or anything like that. The way that I look at sales is you’re simply having a conversation with someone to see if it’s a good fit to work together.

If I were selling a car, for example, just to give a really quick illustration, my goal would not be to persuade somebody into buying a car they don’t want to buy. My goal would be to see exactly what kind of car that person wants to buy for how much money and whatever other factors, and find the right car for that person. And if I don’t have the right car for that person, I would not do business with that person. So, I think most people can agree there’s nothing wrong with that.

So, the interview process, the interview is a sales conversation, and so the way I view that is, again, you’re just talking to see if it makes sense to work together. And if it doesn’t make sense to work together, then you should not work together. And it’s not about persuading the other party. It’s about portraying yourself in an accurate light to see if there’s a good fit.

James: I completely understand that. I mean, it makes total sense. Unfortunately, Jason, time is running away with us, but maybe one final question before we move to the weekly staple questions. Do you have any shortcuts or hacks for people who might be complete beginners who are starting out their journey of learning coding? Any shortcuts or hacks to help them with the learning process?

Jason: Sure, so the analogy I would use here is if you want to build muscle, then lift heavy things, and the more heavy things you lift, the faster you’ll build muscle. So, the way that’s analogous to programming is that you’re going to make progress more slowly if you’re working on a personal project that nobody else uses, and at the other extreme, if you work for a fast-growing startup that has a really popular product, then you’re going to grow really fast.

So, if you want to get better faster, then you should be really aggressive, first of all, about getting your first job, and you should shoot for getting a job where there’s — so, you can work as a programmer working on like internal tools that like five people use. That’s not going to make you get very much better faster. Working at a high-growth startup will help you get better faster. So, that’s pretty much the only way I know of to get better faster other than just the simple tactic of spending more time.

James: Exactly. What you said throughout the interview, you’ll get out what you put in. So, you just need to put the time and energy in, and hope Piers and everybody listening has enjoyed the episode. I know that despite my ineptitude at Java in the past, I’m suddenly fully energized to picking up a book on Ruby on Rails and get stuck in learning a new programming language. You’ve convinced me there.

So, Jason, moving on then to our weekly staple question, so I’m interested in your responses here. It doesn’t have to be coding-related. It can be across any areas that you want. First question. What one book do you recommend that our listeners should read?

Jason: How to Win Friends and Influence People by Dale Carnegie. That book completely changed my life.

James: It’s a classic. Written a few years ago now, but still, really, the message is just as strong now as when it was written in the ’20s, I think.

Jason: Yeah, well human nature never changes, so it’s still just as relevant now than it was back then.

James: That’s one I’ve read. I need to dig it out and have another flick through. But, yeah, listeners, if you’ve not read it, you need to really get yourself a copy, and you’ll be able to get yourself a copy through the show notes. Check out the show notes at graduatejobpodcast.com/coding. And the next question, Jason, we’ve been talking about coding, which website would you recommend that people should go and visit?

Jason: If you want to go to a website and just get started with coding, we’ve mentioned Ruby on Rails a couple of times. That one is a pretty easy one to learn. So, I would find the work of David Heinemeier Hansson, DHH. So, if you Google “DHH Ruby on Rails”, you’ll find that, and then just the official Ruby on Rails documentation is really good. The URL is not coming to mind, but if you just Google “Ruby on Rails”, it’s the first thing that will come up, and I’m sure, James, you can throw something in the show notes for that too.

James: I certainly will. So, as I said, check them out at graduatejobpodcast.com/coding. And final question, Jason. What one tip would you give listeners that they can implement today to help them on their job search?

Jason: This is kind of a minor tip, but it’s important and it’s one a lot of people get wrong. Don’t respond to job ads with a Gmail, or Yahoo, or Hotmail address. It just screams, “I’m an amateur.” Get your own domain.

James: If you take nothing else from the interview, then that is a brilliant piece of advice. I know when I’ve been on the other side of the fence and you get applications through from people at sexylips69@gmail.com or whatever it is, and it doesn’t present a very professional image. So, great advice, Jason, and one that’s well worth doing. Jason, thank you so much for appearing on the Graduate Job Podcast. What’s the best way that people can get in touch with you and the work that you do?

Jason: So, a good starting point is sixfigurecoding.com, and there is a place right on the front page there where you can sign up for my email list and get free job search tips. And if you respond to those emails, there actually is a person on the other end. If you respond, I’ll read your email, and I’m happy to answer any questions that you might have.

James: Ah, brilliant. Jason, thank you so much for appearing on the show.

Jason: Thank you.

James: And a huge thanks again to Jason for his time today. I mentioned at the beginning how I did some basic basic programming at uni and was rubbish, well after listening to Jason I do feel inspired to give it another go and have a bash at coding. I hope that you feel similarly inspired. A degree or lack of one is no barrier, so if you have internet access you are ready to give it a go and get started, there is literally nothing stopping you. Coding and programming remains a real growth industry, the demand for coders is there and the salaries are nothing to be sniffed at either so listen back to the episode again and get involved. Remember all the links to everything we discussed is over in the show notes at www.graduatejobpodcast.com/coding. Whilst you are there don’t forget to head on over to graduatejobpodcast.com/subscribe and sign up so that you don’t miss a thing. I’m developing a course on how to get a graduate job which will distil down all of my years coaching into one place, so subscribe to make sure you don’t miss the launch details for that. If you have any questions, need some help coaching or with an application, then do drop me a line, again at hello@graduatejobpodcast.com. Finally, if you would like to support the show and to help ensure that I can keep putting out great episodes, one way you can do it is by clicking on the Amazon links in the show notes. Amazon provide a small commission to me if you do so, it doesn’t cost you anything but helps to keep the lights on here with hosting and the like.

So that is just about everything. Do join me next week when I speak with Scott Mautz on finding an inspiring graduate job, it’s a goodie. All that remains to say is I hope you enjoyed the episode today, but more importantly, I hope you use it, and apply it. See you next week.

Leave a Reply

Your email address will not be published. Required fields are marked *