How I learned to Code in 6 MONTHS & Got a Job Offer (Self-Taught)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
what's good team welcome to another small James coding tutorial where in this video we're going to be talking about my self-taught developer experience if you're not familiar I taught myself to code and landed a full stack remote developer job all of them about the span of six months and this was all done without any paid bootcamps or anything so totally free self-directed learning so if that is something you're interested in then stick around for this video because I'm going to be talking about everything I learned what the progression steps for each technology that I learned and how I learned them what order all that kind of stuff what the timelines for each looks like I'll also be talking about some of the things that went well and almost more importantly some of the things I think didn't go well huge waste of time would definitely recommend learning from my experience and not repeating the same mistakes that I made then after that I'll be talking about some of the greatest difficulties and challenges I encountered like imposter syndrome or you know getting stuck in tutorial hell because you know realistically tutorials or my friend become very dependent on on them and it's totally natural that you lose the ability to independently create stuff so how I navigated that and then at the end of the video I'll just run over some of the best tips that I think it's great for people to know before they get started and for a long their journey to keep them going strong and land that developer job or just learn to code if that's what you're interested in now just quickly before we dive in I wanted to let you know that I put together a website that's an all-in-one guide or roadmap that's based off my experience everything I would recommend that you guys do there's heaps of great stuff on there for learning everything you need to know about how to apply for jobs plus all the technology where to learn all of it plus you can subscribe for the mailing list if you're interested there's going to be heaps of great content coming out in that too link for the website is in the description below so definitely check that out if you're interested in doing something similar to what I doing and if you enjoy the video don't forget to like sub hit that notification Bell and let's get into it so at the beginning where it all began the Genesis of my learned code Journey was having a terrible job prior to this whole experience really unsatisfied so I quit that dropped that like it was hot and decided to teach myself to code now the very first thing that I did and I would probably recommend this to all of you guys as well is to reach out to some people that you know who are software Engineers or you know have any kind of computer science role often they'll have great resources and it's just good to have a conversation with them they might have some excellent recommendations or connections that could just facilitate your whole journey I did exactly that and one person in particular probably talked to four people gave me the best resource to learn to code ever and this is where I started and picked up my first programming language free code Camp absolutely phenomenal resource I did their JavaScript algorithms and data structures course super interactive the way they teach the course is they break it down into all you know very specific modules for each morsel of knowledge that you should really know each subtopic they break it down they give you a description of how it works a little Challenge and then an interactive development environment where you can actually go ahead and code live beat the challenge solve the problem using JavaScript algorithms and data structures and move on to the next topic the problems are all at the perfect level where you will take a lot away from them it's super engaging seeing yourself progress throughout their little certificate that they offer and if you get stuck they have great explanations on how to answer the question specifically so that was the first thing I did timeline for that for me was between two weeks to a month it says 300 hours on the label of the certificate that is a fat load of khaki did not take me nearly that long you know I would estimate approximately three to four hours per day of you know dedicating myself to working through that certificate so that for me was step one and I would recommend exactly the same for you two to four weeks step two for me was learning HTML and CSS and I did that in the exact same place once again free code Camp they have a certificate on responsive web design and it covers an introduction to HTML and CSS once again you can code some pages using their development environment do some challenges get that certificate and the certificates are super cool because you can embed them into your LinkedIn and it just looks like you have some kind of certificate which is better than nothing you have some accreditation so once again two to four weeks for the second one start of my programming was probably a month and I had JavaScript HTML and CSS under my belt now this is an excellent starting point because ninety percent of the web essentially boils down to JavaScript HTML and CSS and so I definitely recommend you start in the same place plus the feeling of accomplishment of you know learning JavaScript and actually knowing a programming language for me was Monumental and really just getting the ball rolling giving me some motivation some self-confidence to just you know progress and keep going so after I'd done these two things the next thing I moved on to was a YouTube tutorial by none other than the CSS King Kevin Powell he had a two hour YouTube tutorial on building a beginner portfolio website it was the perfect progression because I'd kind of looked at how individual elements of HTML CSS worked and this portfolio just pulled it all together into a website pretty static information taught me how to host it live and I could send it to my family and friends and you know I was so stoked that it actually made a website for me once again it was just great for giving me some encouragement and obviously his design and the tutorial looked dope so that was cool too link for that will be in the description down below I'd recommend giving that a shot too because because your portfolio is a great way to start putting yourself forward to prospective employers hound them with your job applications so at this point I was kind of at a position where I had the audacity to think that I could start applying for jobs that was pretty stupid and a quick learning curve for me but it also helped me realize that you know I had no credibility except for those two little certificates and when you're up against a huge pool of software Engineers it's just not going to pan out well for you unless you can find a way to give yourself credibility to the employer without that formal education it's just hard for them to really gain enough trust to bring you on board just from you being like I completed this little certificate you should give me a job now so credibility is a massive keyword to Landing your first job and this was the next phase of my journey which was you know how do I gain this credibility so for me the solution was projects in my portfolio if you can have a project that you can you know show to an employer and you know let them see the code in your GitHub for example it's a huge step and then being like oh this person can actually Walk The Talk do what we need to do and when you apply for their job descriptions you know it will be blatantly obvious that this person literally has the skills needed to do the job so I started off you know and spread myself super thin had a whole lot of random little projects that were just maybe a bit of a waste of time and this is probably the first learning curve I really think you want to focus on three pieces of code three projects that are super tidy and consistent ideally across all three projects you'll be able to demonstrate a wide array of skills I'll get into more of that later and how you could potentially break that down but for me my first project and what I felt was the natural progression of HTML CSS and JavaScript was to learn react native not react react native for those unfamiliar react native is just the mobile app development framework that allows you to develop hybrid platform code it's very similar to react it's just specifically for mobile development looking back I was really motivated I really wanted to build apps at the start and so for me you know that was why I went with react native when 99 of people would just go as react for web development I think for me it works because as I said I was motivated by developing apps at that particular time and you really want to just follow the path that you have the most motivation for especially when you're self-taught however in terms of a more natural learning progression and the one that will probably make you more employable is just packing up react and then if you enjoy mobile development moving into react native later either way they teach you a lot of the same skills you know they're very similar Frameworks so you know you pick up react one way or another and this is a huge check on your resume for employers react is used absolutely everywhere totally mind-boggling as much as there are front-end JavaScript Frameworks that are more up and coming react is the absolute top dog and I think it is the next essential for you to learn that I learned to add to your tool belt so I built a mobile app this was my first project that I actually finished that wasn't spread too thin that I added to my portfolio uh once again the code was on GitHub so employers could see it and the project was live so that I could give a demonstration of how it worked to anybody this I think is a requirement as well for any of you watching definitely your code has to be visible on GitHub so that they can see like the caliber of your coding capabilities and also if the project is live it shows that you have skills like deployment and hosting and all that kind of stuff which is critical so this whole experience probably took me about another three weeks to build this app and learn react native I followed academics tutorials to learn react native this for me was a real double-edged sword because at this point everything I developed had been based off YouTube tutorials and this is when I started to fall into tutorial hell and it's also when I had the challenge of you know navigating that experience which I will get to shortly but yeah as I mentioned after this three weeks of learning react native you know I'm probably coming up to about two months two and a half months of development time and then it was time for me to move into a new era of Interest which was my second project and that was an e-commerce store so as I mentioned 90 of you will go down the react then react native route I went react native for my mobile app and then built an e-commerce store with react and stripe now I think this is also an excellent project and it's a good demonstration of skill because you know a majority of SAS companies out there that could potentially you know their prospective employers will incorporate stripe to handle their billing and subscription services so being able to add stripe to your tool belt and you know really just Flex that to anybody is a great thing to have put it on your CV an e-commerce store was kind of cool for me because I think that you know e-commerce is absolutely huge everywhere it's very relevant it's a great thing you know it's a cool buzzword we definitely recommend doing doing something similar I decided to sell some T-shirts so I actually went ahead and printed a whole lot of t-shirts total flop because you know while I can build an e-commerce store I have no marketing skills so that was a swift learning curve but nevertheless I built an e-commerce store stylized it myself however it's important to note that once again this was just based off another YouTube tutorial except this time I adapted and once again this is kind of like how I learned to navigate tutorial hell is you know the keyword is adaptations so I took the skeleton of the project that I'd done on YouTube totally gutted all of the non-essentials specifically the designs some of the basic functionality and componentry kept all the essentials like the way stripe was integrated in and the database systems and whatnot and then I adapted the project to my own e-commerce store hosted that light put it in my portfolio and you know Bob's your uncle tried to get my mum to buy on my t-shirts anyway at this point you know that was another three weeks or so so we're probably coming up to two and a half months three months and I had two projects in my portfolio that were both live I could demonstrate the code on GitHub you know it really flexible my coding skills I thought I was the king of the world kind of navigated tutorial how a little bit using adaptations keyword adaptations I'll speak to this shortly and then at this point I felt confident enough to just letter the world with my job applications left right in the center and that experience was real gut Buster for me because I still wasn't getting enough attention you know the solution for me was to just realize that job applications are a numbers game you know at this point I'd just really been going for front-end roles because you know all my projects were front-end projects they were just very visual client-side all that good stuff I really needed to incorporate some back-end knowledge into my toolbox so that I could just you know go for full stack and back-end roles as well and for me this started off with node.js absolutely love node.js if you're looking for a back-end web server framework to pack up you know you already know JavaScript look no further node.js and express beautiful great tutorial on my channel check that out if you are looking to get into that anyway so I picked up node.js and this gave me some experience with you know client server interactions and then after a little while I felt confident enough to go for a full stack project so up until this point I'd kind of had a project that was a react native app I had another project that you know was an e-commerce store that used stripe for billing it used commerce.js consume that as an API inside of a react project for an e-commerce store so you know you can see the pool of technology that I can advertise growing and then for the third project I wanted to head home with full stack client-side authentication database system you know whole shebang so it was a planet app that people could log into authenticate and then you know create their own plans that they could access on their mobile and then on their desktop later and all of the information is shared between them for this I actually didn't continue with node.js I felt like node.js taught me the essentials but I actually went with a pass service so platform as a service these are phenomenal I went with Firebase Firebase is just absolute game changer for you know having a full stack Project without having to go through a lot of the admin of Hosting your backend systems hosting a database you know making sure that all of your systems are authorized and secure there's quite a large learning curve there that you don't have to navigate if you just choose to use Firebase as an alternative and you still get the you know ability to flex full stack development on your resume which is absolutely dope so finish this project this one was my biggest project yet this took me a month and all this month I was still sending out job applications now as soon as I had this project in my portfolio I had my three neat projects critical three main projects any more is too much attention to spread the attention becomes spread too thin no one can really appreciate the thought and effort that's gone into each individual one and the code for each of them was pinned on my GitHub and you know just to show the effort that went into all of them how the systems were configured and to demonstrate that I could write clean code once again the benefit of doing these free code Camp certificates at the very start was that a lot of my code was best practice so that was absolutely amazing and after I submitted this project this is when I really started to get some attention from you know employers get some responses stuff like that and then as soon as you're getting these interviews that is it you know then it's just a matter of time until you find the job that fits for you anyway so just to quickly summarize the end of my coding Journey learning to code probably four to five months till I was feeling pretty comfortable with full stack development maybe not so much the back end stuff I could just use Firebase services and had you know a pretty good understanding of like Network requests basic crud functionalities and full stack apps and I think that's where you should really just be able to transition from learning to code to Landing a job so at this point I was sending out probably three job applications per day and all the while still trying to grow my skill tool about specifically for me that meant learning python so for learning python since I'd done the free co-camp program I just did a you know I think it was like a five hour data science tutorial on YouTube and by the end of it just five hours it's sufficiently a close relative to JavaScript as far as programming languages go to you know be able to incorporate it into your resume say that you're cool in Python and all of a sudden the job Hall is even better bigger you know you can start applying for jobs that use python as a back-end service because a lot of these Python and JavaScript backend services are very similar you know they mirror each other in a lot of ways I'd absolutely recommend that as a progression if you're not getting the attention to your responses that you need but also this is where I made some critical learnings this is you know a real secret nugget and I think that at this point you can say that you can code you have the credibility now it's just about nailing your job applications so for me in job applications the secret was to have a cover letter that was sufficiently specific to the type of tech roles that I was going for which was react node full stack front-end anything like that and then I had a resume that was just very consistent so I would for every job application adapt my cover letter very slightly the resume would stay the same and I'd pump out three applications per day as for the platforms that I was applying on there was LinkedIn there was Angel list and there was like the standard job board that everyone goes to in the area obviously everyone is familiar with LinkedIn but the volume of applicants was just mad like you know the jobs I would go for would have 200 applicants where I had a lot of success was on the more Niche job boards such as Angel list where it's like startups posting for new roles and the critical thing that I did that I had a lot of positive feedback from was every time I posted a job I didn't do this initially this was something I tried later and on LinkedIn I would find someone either the job poster for the role or someone senior inside of the tech portion of the company and I would slide into the LinkedIn DMS with a connection request and a small note that said hi hope you're having a great week or whatever friendly introductory message I hope this message finds you well and then I would say I just noticed that you guys are posting for a react developer you know I myself am a seasoned react developer they don't have to know that you just learned it and then you know I would just say I would love to connect and maybe chat more about this role if you know and you know sometimes they won't get back to you uh once again if you want to really see the whole job application process check out my roadmap website in the description there's a really great article that I wrote about applying for jobs has all this information but yeah taking the initiative to send these follow-up messages and connection requests just gave me a bunch of free interviews I didn't have to wait for responses to come back to me with some silly you know coding test or whatever on a number of applications I would get direct responses from the hiring managers who would be like yup absolutely let's have a chat with set up a 20-minute call and it's essential it literally is a free interview and that goes so far because you get a bit of a chance to demonstrate your skills it's so much more personable that you become so much more than just another resume and if they like your personality you know it can be a job it's as simple as that I had one experience where the guy responded being like I love the initiative absolutely let's have a call how to chat with him he was like yup excellent Sick Fat love it let's set up a call with the rest of the team talk to the rest of the team and you know lo and behold there's an offer just from taking the initiative no one else none of the hundred applicants that applied for that job took the initiative to message the Geezer on LinkedIn slide into the DMS with a friendly approach and there's your there's your job offer and this so that is essentially you have to do that if you're not doing that big oopsie rarely recommend doing that the other thing that landed me the job that I currently have you know once again it's a numbers game it didn't necessarily proceed with this offer because it wasn't quite the tech that I was looking to work with you know for some reason I had the confidence to be a bit more patient the thing that actually landed me the job that I have today was my communication now you know what is communication communication is not how well you speak a particular language it's the intention behind your messages so for me I you know had this great job that I was looking at and I actually got rejected in the first instance because you know I applied light and they had already filled the role by the time that I was applying however they still took me through the first phase of the interview so I had a chance to demonstrate my communication skills what that looked like for me was just consistent considerate kind messages you know they gave me an initial interview I'm sure you know you don't know what's going on as soon as the interview ended I just said you know so thankful for the opportunity love meeting you guys it was interesting hearing about everything that you're working on you know look forward to hearing from you never putting any pressure on them to proceed with you but always showing gratitude for the opportunity to get to meet them get to learn from them and get to you know understand more about their company and what they do so you know in this particular role that I have currently I got a second interview with a bit more of the team once again the same thing just you know kind response after the interview following up always sending that positive reinforcing message that's just like no stress loved meeting you guys just this opportunity is excellent lots of gratitude and then got rejected because the role was full even in that rejection and this is a huge thing you know no you get rejected ninety percent of the applicants for these roles are just like oh next one move on I followed up I said you know no worries totally understand all good once again so grateful for this opportunity a week later or something like that the guy responds to me he's like love the way you communicate we're going to see if we can work something out and bring you in that was my job Great Tech stack phenomenal role couldn't have asked for a better opportunity so thankful that you know they gave me this chance because it's been an excellent team to work with and I just couldn't be happier because of the communication skills you reach a point where everyone can code you know as I mentioned you've displayed your credibility you can match all these other plebians that have done the software engineering qualifications or whatever in terms of their ability to code a full stack application now it's about demonstrating that you are going to fit in the team you can communicate your friendly you smile you know and they want you in their team and that's what's really going to land you the role make sure you send kind messages and never feel afraid of bombarding people with happy smiley face emojis because it's the positivity that the world needs so as I mentioned this whole discourse took about six months from learning to code I'd say it was four months of really spending time actually learning to fill code and feel comfortable behind my keyboard the second two months was just grinding job applications and every time I got a rejection I would improve something about my application whether or not it was just making my portfolio look a bit tidier changing some of the messaging updating a GitHub read me whatever you know just doing something a little bit better and improving myself until I landed these roles and so now we're at a part of the video where I'm just quickly going to speak to the big challenges that I encountered so the first one is tutorial hell this is absolutely a problem for you know learner developers I myself have a coding YouTube as you may have seen check out some of the videos but don't fall into tutorial hell super easy fix that you know it took me way too long to on was adaptations you start off following a tutorial in the first tutorial that you do to build a project don't leave it that way change something change a font size change a text color change your background color do a different image resize the image minor changes very small changes accumulate into big change a new project it's like the ship analogy if you buy a ship and replace every piece of the ship is it still the original ship encoding it's absolutely not it's your own project for even now you know I will find a tutorial that I really love write the code out for it save it to my GitHub and then when I do something different I know that I don't have to completely rebuild a lot of the skeleton Frameworks to make that project work I can just go to that GitHub repository see how they've done the auth database you know full stack infrastructure copy that in and then gut the projects repurpose it restyle it change the functionalities keep the bear crud auth database system and move forward now the caveat to that is that it's important you understand how it works but you don't have to memorize it and by the time you've done that three or four times then you can just go ahead and write it whenever you want adaptations on the first project change something minor on the fifth project the fifth tutorial you go through you know change the whole functionality take a to do crud app and turn it into a calendar planner whatever you like solution to tutorial hell right there the second one I struggled with is imposter syndrome as a developer so many applicants it's just mad you know you will suffer a fair amount of rejection and especially after months and months of effort it can just be super draining and tiresome and demotivating demoralizing all of these you know negative words you have to be dumb dumb enough to have unreasonable amounts of self-confidence and also you just have to realize that a rejection is not what a rejection actually seems like you know there is such a high volume of candidates nowadays that rejection is just a guarantee you'll get a lot of it you just have to be stupid enough to ignore all of it have unreasonable amounts of self-confidence and remember that it's actually these people who are the Muppets who are you know missing out on the great opportunity to work with you it's not an actual rejection it's just that they can't see more than just a resume you know they don't really get an opportunity to see who you are it's just a rejection because they don't have the attention to detail that they really need to appreciate a candidate like yourself the other thing I'd recommend is you know you just a really important thing to demonstrate is you want to be the best learner there's going to be two types of people some people will get critique or criticism and really just respond negatively and as a junior developer that is just a massive red flag you want to make sure that every time you receive feedback rejection any kind of criticism ideally it would be constructive you want to take it on board be grateful that you've had the opportunity to learn and you know improve if you can demonstrate that skill set in addition to having good communication then you know even the best developer will you know not stack up against you because as soon as you all reach a certain level of coding you know any amount above doesn't really matter you really just want to be the person that can complement that ability of coding with some good soft skills which is you know being a good learner receptive to feedback and an excellent communicator but once again rejection you're going to get a lot of it it's just a numbers game you just have to send out the applications get them done improve a tiny bit each time and it's just a matter of time before you will land a job stupid levels of self-confidence that's what makes the world go around you just got to join the club now those are the big challenges that glad we've capped that onto the tips and tricks I would just absolutely essential from my point of view to give to you that you should know before you start your coding journey and for along the way the first one is LinkedIn great platform you know I personally don't think you need to be one of those cringe people that posts their whole journey all the time if that's you no hard feelings it's just not me and I don't think it's necessary what you do want to do is have a tidy profile that when you reach out to people they look at you and they're like oh cool and what that is is a little bit of self-expression in terms of the banner you know you want to have a nice and tidy profile image and you also want to have you know your I desired role in your sub header and then in your description you want your previous experience filled out it doesn't matter if it's related to tick or not there's always a positive takeaway in terms of like problem-solving communication leadership and just turn it into something that will constructively help your Tech applications you know if you solved any form of problem had any kind of communication issues led a team that's all great project management it can all be turned into a benefit as I mentioned earlier add your certificates from free cocam if you have them and also LinkedIn has some skill certifications you can get little badges for them if you can get them they look good because it will just prioritize you when recruiters go looking for you know people who can code an HTML the second one is GitHub absolutely essential I got my GitHub too late and I didn't contribute or commit to it enough if you don't know how it works or how git Works check out the get crash course on my YouTube page it's pretty quick should teach you what you need to know then set up a GitHub account and from the minute that you've finished your free code Camp certificates for web design and JavaScript and you're coding your own projects and visual Studio code editor commit daily employers will look at your GitHub and check your activity by as a measure of your commitment and drive to learn to code self-improve and all that kind of stuff and if you have like six months of everyday commits it doesn't matter if it's like a single comment added or a whole body of code as long as there's some contribution it's all green that's just going to be a massive green flag for employers so definitely get on that from day one it's a real waste if you start halfway through because you're missing out on showing that you've actually been working hard for twice as long as you have been another thing that I kind of spoke to earlier that I'm just really going to emphasize is don't spread yourself too thin you really you might have 100 ideas you might only have one three is the golden number three plans and then what you do is you focus on learning to code then you build a portfolio then you populate that portfolio with your three projects now these three projects it's essential that each of them has a link to the live project where someone can go and check it out or try it see that it works and then also a link to the GitHub and this is the fourth tip every project in your GitHub specifically the pinned ones the three you can have up to six I'd recommend three they need the code needs to be Immaculate and you have to have a readme.md file for each of them that works through a logical you know text-based description of what the project is what the problem was the solution you've engineered challenges you encountered why it benefits society different Technologies and learnings that you've had from it just everything into your readme that really just shows that you can break down a problem you've got problem solving skills you learn you can tackle challenges and you can write good code super important to have these extra special readmons just so that someone doesn't have to sift through all the code to understand what's going on you know you can talk about the common features the tech stack all that kind of good stuff really good to have if you're demonstrating your projects the next one is about cataloging information as you go along your journey every good resource YouTube tutorial you know maybe it's an article it's a GitHub repository everything like that that you come across you really just want to catalog it into you know it could be your own GitHub repository if you've Rewritten the code from a YouTube tutorial it could be writing a medium article and setting up a medium count that just is like oh you learn how to set up a python environment using the virtual EMV package and it was really concise write a guide on it make it even more concise and just build a library of these amazing you know things that you can't quite remember but you know you're going to want to access or index at some other point in the future so good you know like I have one particular modal tutorial that I love for building models and react I can't always remember how to do it off the top of my head because it's you know it's fairly infrequent but I know that I can just go to my GitHub see how it's done remember everything that's happened in two seconds and it's just great to have a cattle of all these things that I know I can lean on even though they're not in like my instant recall I understand how they work and I have them there when I need them and this leads me into the last thing which is the best way to learn and memorize code now I don't think you should memorize code but there's ways that you can go about coding that will make it stick better and for me the critical part is whenever you do a tutorial comment it throughout write out their code but each time like you do a function and you learn what the function does leave a comment above the function that just speaks to it it's tenfold a good thing to do because it means that for one you spend more time understanding all the different steps that happen you know like maybe I pass this reference value here for this reason just comments all throughout for your own benefit absolutely improves the learning process consolidates that information in your head and you will just be able to access it better and the second fold reason is that it makes it a million times easier if you're coming back to it after a period of time you don't want to have to go watch the whole two-hour tutorial but maybe you just want to be able to look at one particular file you can see you've left all these nice little notes to yourself to really explain what's going on and as you review that code to reuse it it's just very explicit and clear what that does and it's right there for you great for learning to code in terms of just make making sure it's a really efficient process for you and that's pretty much it really that's the whole story you know six month turnaround learned some front-end stuff some back-end stuff landed a full stack remote developer job thank you so much for watching if you want to give this a shot that's what I've set my whole YouTube up around so check out some of the videos they might help you learn what you need to know and check out the website Linked In the description to see the guides written in front of you and you can just follow it step by step if you want to send us a message leave a comment down below check out the Discord and if you're interested have a look at the mailing list subscribe to it you know you'll see what videos are coming thinking about doing a course that might be listed in there all sorts of good information if you've enjoyed don't forget to like and sub thank you so much for watching catch you guys later peace
Info
Channel: Smoljames
Views: 545,735
Rating: undefined out of 5
Keywords:
Id: nP0-oYGiqts
Channel Id: undefined
Length: 34min 44sec (2084 seconds)
Published: Sun Feb 12 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.