Learning to Code: 5 Paths to Becoming a Software Developer and How to Enhance Your Skills Along the Way - Part 3

Are you learning to code or looking to improve your technical skills? Join us for a 5 part blog series on the many paths to a career in Tech and how you can improve your skills, and your job prospects, along the way! Monthly, from September through January, we’ll be exploring various learning mediums and how to best leverage those resources for success. We’ll cover free online tutorials and courses, coding schools/bootcamps, CS degree programs, interview prep, and continuing education. You can find September’s blog on “The Self-guided Route” here and October’s blog on “The College Route” here.

Part 3: The Code School Route

Learning through Code School Programs and Bootcamps

For anyone who wants to learn to code and land a highly sought after software developer job, you’re in the right place. In Part 3 of “Learning to Code: 5 Paths to Becoming a Software Developer and How to Enhance Your Skills Along the Way” we’ll discuss code schools/bootcamps and how to get the help you need while you learn a rewarding (and challenging!) new technical skill set.

If you’re thinking of enrolling in a code school, code academy, coding bootcamp or are already in one, then hang with us to the end of this article as we talk about the various ways you can leverage available resources to bolster your knowledge, as well as your confidence, to become “industry ready”. As with traditional 4 year college degree programs, code schools and bootcamps are notoriously difficult. Though the reward is great, the investment in time and effort is high. Neither option is for the faint of heart and if you’ve ever attended either, you’ll know this to be true. So, while degree programs and code schools share this in common, the delivery and level of industry readiness will be vastly different depending on the school attended, but that’s okay! We’ll go over ways code school and bootcamp students can get the help they need, too.

Though code schools/bootcamps are incredibly challenging, many are intentionally designed that way. Their goal is to get you industry ready as quickly as possible, which means dedication and hard work are essential. As a producer of quality tech talent right here in Seattle and around the globe, we see firsthand what it takes for students to be successful in the industry, so we can speak with confidence on the amount of grit and determination it takes to be successful. We can also say with confidence that individuals who desire to learn and are willing to put in the effort can have rewarding new careers in tech if they are provided the right tools, training, curriculum and support. While the delivery and content of software development education will be different based on the school, it is crucial that you leverage the resources that are available.

One amazing resource that is often overlooked is the knowledge of classmates. Fellow classmates are right there with you in the thick of the coursework and often face many of the same struggles when attempting to understand a challenging new subject. Being able to work together as a team to explain the how and the why of a piece of code, framework, or other technical topic is great for understanding and advancing through the curriculum but equally valuable practice for the job itself. Many developer teams have daily standups which involves communicating with your team, explaining what you’re working on and what you’ve accomplished since the last meeting, as well as what you’ll be working on next and what’s blocking you from completing your work. Consider working with other students as not only a way to “get through” the coursework, but as practice for your new career. You won’t be sorry you did!

We can’t speak for other code schools, but we pride ourselves on the wealth of knowledge and commitment to students that our educational team displays on a daily basis. That’s why they’re such an amazing resource for students. Our instructors come from a variety of backgrounds and skill sets with years of experience working with a variety of teams in tech; this provides a unique perspective for every student as tech stacks and internal practices will vary from company to company. Not only do students have access to instructors for help, but most schools also provide teaching assistants. Here at Code Fellows we keep a 6:1 instructor to student ratio so students have greater access to help when needed. Our teaching assistants are all graduates of our program as well to ensure that they can provide the kind of support that only comes from “walking in their shoes”. They know what students are going through and they know the curriculum. This makes them uniquely qualified to be the first line of defense when seeking help, so utilizing the combined experience and knowledge of instructors and teaching assistants is a powerful tool - use it.

Another resource students sometimes find useful are online tutorials, documentation, and Q&A sites like Stack Overflow. All of these are great resources, especially the documentation for a particular framework, API, etc., but documentation isn’t always adequately maintained or intuitive, so be aware of this and know when to move on to other resources. The same could be said for online tutorials. While helpful, you’ll want to know when it was last updated to have an idea if it’s currently a valid tool for the basis of your learning. As for Q&A sites, they may prove to be helpful, but you should use them with caution. Solutions and code samples are often given in response to questions by community members, but know that: 1.) The solution given may not be right for your purpose; and 2.) The object is to understand the concepts taught within an assignment. Grabbing code samples from these sites will not be helpful to you if you don’t actually understand how or why the code works. In fact, it may work to your detriment in the long term. Be curious, search the internet, documation, and Q&A sites for the right tools to help you, but do so with an attitude of learning so you can rely on what you’ve learned rather than what you’ve found.

If you want some individualized attention outside the classroom or maybe even thought, “wouldn’t it be great if I could spend some 1-on-1 time with an experienced developer who can help me better understand the material or review my code with me line by line?”, look no further. We have an entire tutoring program to do just that. All of our tutors are software developers who understand what it means to learn in a code school environment, because they’ve been there. They understand the steep learning curve, fast paced environment, and curriculum you’re experiencing, so they’re perfect for walking through difficult technical material in sessions tailored to you.

Now, if you’ve ever wondered, “When is it time to actually request help?” We have some advice for you:

  1. When in a structured, fast paced learning environment of a code school/bootcamp. Don’t be too quick to ask for help or stay stuck for too long. Grappling with a topic is normal and a part of the learning process. Give at least 15 minutes of solid effort and research to solving your problem. If a solution or clarity about the issue hasn’t come, then ask a teaching assistant, instructor, or schedule some 1-on-1 time with an experienced tutor.
  2. Use “Rubber Duck Debugging”. The idea is to explain your code line by line to an inanimate object, forcing not only a deeper understanding of your code, but also pinpointing areas of confusion (ie. Talking to a rubber duck. They are effective, affordable, and adorable). Knowing where you’re stuck will help you debug on your own and inform anyone trying to assist you. Give it a try. It may seem silly at first, but there’s a reason it’s a documented technique among software developers. You can read more about it in, “The Pragmatic Programmer”, by Andrew Hunt and David Thomas.

Look into individualized help with a seasoned tutor. If you’re committed to your own success and your new career, then don’t delay. Code schools/bootcamps move fast, so leveraging any, or all, of the resources outlined in this article will be crucial. The point is, no matter what you resource(s) you choose: keep practicing and keep learning.

Tutors cover topics in general technical assistance, code editor and revision control basics, fundamental coding concepts, data structures and algorithms, database operation, project build processes, automated testing, HTML and CSS, JavaScript, Python, C#, Java, and more! Sessions are scheduled in 1 hour increments and are totally dedicated to the student. No waiting around for your turn to ask a question. No sharing your tutor. Tutors are available to meet either in-person (if you’re in the Seattle area) or online. Either way, they’re happy to help you learn and land that dream job.

Sound good? That’s because it is. One session with a tutor goes a long way. Not only do students get individualized help by working with us, all profits go towards our Diversity Scholarship Fund which helps underrepresented groups in tech fund their education.

Ready to get started? The process is quick and easy. Simply click the big “Get Started” button below and fill out our general inquiry form. We’ll follow up with you over email right after to learn more about you and what you’d like help with. Be on the lookout for that email and check your spam folder just in case! The instructions within help us match you with the right tutor. After you’re matched, you’re free to begin scheduling learning sessions directly with your tutor. Also, there’s no program to join or commitment to make. Just schedule with your tutor for as long as you need.

For questions, please email tutoring@codefellows.com and we’ll be in touch!

Previous Post

About the Author