You will need to bring an Apple laptop with you to class.
- Ruby is dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write. We teach Ruby because it is one of the easiest programming languages to learn that is powerful and popular enough to be used to build full-blown web applications.
- HTML and CSS are used to design, layout and present web pages.
Data Storage and Manipulation
Databases store and manipulate data. We will teach you SQL, the language designed to manipulate data in relational databases like PostgreSQL.
A framework is a set of tools and ideas that is used to resolve a common problem:
- Ruby-on-Rails is a powerful framework, written in the Ruby programming language, used to quickly build full scale web applications.
Industry Best Practices
- Version Control Using Git. When you write your code, you need to store it as you write it. When you write code that is part of a larger application, you need to be able to merge it with the the larger code base, and stay out of trouble. Many teams rely on Git to help with these concerns, which is why we will spend a lot of time training you in the proper use of Git.
- Test Driven Development. It is easy to build a small application and just look at it to see if works. As projects grow, it becomes much more difficult to evaluate what negative impact your code changes may have on the entire project. That is just one reason why we write tests, and why you will learn to embrace testing as part of your workflow.
- APIs. These days, if you want to get information from another service, whether it’s weather information, tweets, Instagram or New York Times, you will need how to access their API (application program interface).
- Troubleshooting. One of the most valuable skills that a software developer can have is how to figure out where the code is broken. Because code breaks often. We will teach you tools and techniques to track down and solve errors.
In Code Platoon’s Beyond Tech curriculum, students will learn the interpersonal skills necessary to become a world-class junior developer. This curriculum helps bridge the gap between their military experience and civilian technology companies. Students strengthen their self-knowledge through a personality assessment and develop a customized approach through teamwork, resolution, inclusion, and negotiation exercises.
In order to best prepare Code Platoon’s students for the extremely competitive software market, we have created a rich career prep curriculum. Where most coding bootcamps truncate their web development curriculum and tack on an extra week to very basically cover the large topic of career prep, we have added 50% more instructional time and woven the career prep curriculum into that time. Our students come out of Code Platoon with an industry-ready resume, a professional LinkedIn profile, and 100+ hours of behavioral/technical interview practice.
Code Platoon is an immersive full-time developer boot camp for veterans. Classes are every weekday, with a mix of lectures and hands-on coding time. All classes are in-person and students are expected to be on-site for the duration of the program. Students will collaborate with their cohort throughout the program on projects and coding challenges.
The program runs 14 weeks on-site. If you participate in the internship program, the program extends to roughly 32 weeks total.
Prior to the start of the program, students will receive a package of pre-work that they will need to complete prior to arriving on site. That pre-work should take between 60 and 100 hours to complete, and will cover computing basics and learning some tools of the trade.
Daily Class Schedule
Once in-person classes begin, most days will follow a similar pattern. From 8am to 5pm, there will be an instructor on site. In the mornings they will lead a class for 45 minutes to an hour and half. You will spend the rest of the morning working on code challenges, often in pairs. After lunch, there will usually be another lecture, followed by more coding challenges that will keep you working well into the evening. As the weeks progress, you will find that more time is spent in team project work, and less in lectures and individual/pairing work. The intensity remains the same, but the flow of the days changes.
Most weeks, you will be working 10 to 14 hours a day, 5 to 7 days a week. We feel this intensity is necessary so that we can cover enough ground to prepare you for a career in software development. It is hard to become barely professionally competent in a field that is new to you. It is even harder if you try to do it with fewer than 1,000 hours of instruction and practice. Everywhere you read, you will find this in common about people who train to become software developers — there is no substitute for practice.
A typical day starts with 1-2 hours of lecture to cover a variety of topics, followed by 6-7 hours of structured workshop time to do assignments. The time spent during the day doing assignments is the application of the concepts taught in the morning. During these assignments, students are writing code based on what they learn in the lectures. Our course is separated into 3 learning modules below; please note that there is a significant amount of homework and weekend projects that students are required to do that we don’t count in the approximate time and clock hours.
Module 1 (Weeks 1-4, 160 hours) : Computer science / programming fundamentals
Module 2 (Weeks 5-6, 80 hours): The World Wide Web
Module 3 (Weeks 7-14, 320 hours): Creating Applications
This module will teach students how to create modern-day web applications, including database design and integration, web routing, and the Model View Controller framework through Ruby frameworks including Sinatra and Rails. Students will learn authentication, testing, and API integration as well. They will learn to integrate the ReactJS framework on top of their Ruby on Rails application. This is the most important week as it is where students learn the skills that employers will expect them to have on the first day of the job and they will see how all the skills learned in the first 2 modules will come together to build an application.
Session 1: Teams & Team Building
From asking for help when stuck to pair programming and taking direction, being able to effectively work on a team is vitally important to the life of a junior developer. This session helps our students understand the techniques modern technology teams use to build camaraderie and transfer knowledge between team members.
Session 2: How to deal with being stuck
At one point or another, every developer deals with the feeling of being stuck in a problem. Feelings of “imposter syndrome” are commonplace and students will inevitably question why they are even learning code in the first place. This session will normalize the feelings of “imposter syndrome”, give students a good vocabulary to describe their feelings and move them from a fixed learning mindset to a growth learning mindset.
Session 3: Diversity & Inclusion Part 1: Diversity
Today’s modern-day workplace represents a rich melting pot of people from many different races, religions, sexual orientations, genders, etc. As we enter this workplace, we have to understand what makes us diverse. This session aims to get a better understanding of the lexicon that surrounds diversity. Participants will be guided through a series of exercises and discussions to better know themselves, and define identity. By increasing our students’ diversity lexicon, they will become effective advocates to creating a richly diverse and inclusive work culture.
Session 4: Diversity & Inclusion Part 2: Inclusion
Simply understanding the vocabulary to describe the diversity in the modern workplace is only half of the equation to having a diverse and inclusive workplace. This session aims to equip participants with preventative and reactive measures for practicing inclusivity. Participants will learn various ally skills to use with peers, and methods to combat insensitivity at the office.
Session 5: BOSI Assessment
Understanding one’s value to an organization comes from knowing oneself. This session will guide students through the BOSI personality assessment and give them a better understand of where their natural tendencies lie in an organization.
Session 6: Personal Finance
Many military personnel have little to no personal finance training which leads to a slew of financial issues. Going from a military salary to a technology salary is a significant increase and can either lead to more financial insecurity or put students on a track to financial success. In this session, we will talk through the importance of budgeting, getting out of debt, and how to set up an ecosystem for healthy finances
Session 7: Job & Salary Negotiations
Salary negotiations are a vital part of every job search – too often, thousands of dollars are left on the table just because candidates don’t negotiate. This session will help students find the confidence and verbiage necessary to negotiate at the offer table through a series of role-playing situational exercises.
Session 8: Job Search for people who hate job search
After finishing a coding bootcamp, students are often surprised to find that searching for a full-time position is often more difficult than the coding bootcamp curriculum itself. From endless cold emails to countless networking events, searching for a job is exhausting. This session will help students put job searching in context, help them get on a written plan, and overcome their fears of interviews.
Students are given time / instruction during the first hour of class each day to work on their LinkedIn profiles, prepare answers for behavioral interviews, and work through technical whiteboarding interview questions. In addition, students are taught 1-2 technical interview questions each week by senior developers in the industry.
Code Platoon is fortunate enough to have a number of volunteers from the recruiting and technology industry come in and teach our students. Through our Director of Career Development, we’ve come up with a number of sessions to best prepare students below:
Session 1: Building an online presence
This session reinforces the building of a strong online presence via Github, Twitter, and LinkedIn. Students are taught how to fully utilize Github by finding interesting projects, following active contributors, and giving “stars” to reputable code bases. During the session, students will be taught where to look for beginner-friendly open source software and build their online presence.
Session 2: Resume Writing Workshop
This workshop teaches students to carefully document the work they are doing, write notes on their specific contributions, and record what challenges they are facing with their learning new material. They are then tasked with starting to think through / document their own narrative – how they got to Code Platoon, their experience in the military, etc.
Sessions 3-5: Individual Resume Writing Coaching
During weeks 8 – 11, students will be meeting with volunteer recruiters vetted by the Director of Career Development up to 3 times to review and work on their resume.
Session 6: Final Interviews (Behavioral)
During this session, professional recruiters will talk to students on how to best present themselves in an interview and how to break down behavioral questions.
Session 7: Final Interviews (Technical)
During this session, a senior developer from the community will come into teach students how to approach and break down technical questions. This session will cover both answering whiteboarding questions and how to speak to their general technical knowledge.
Session 8: Mock Interview Day
The summation of the career curriculum is a mock interview day given by industry professionals. Technical and non-technical interviewers will come in and interview up to 5 students each and give feedback to students. Each student will have five 45-minute interviews with a mix of technical and behavioral questions.