FOUNDATIONS PROGRAM

Launch Your Career as a Software Engineer

Foundations-Introduction to coding course is designed for individuals like you, who are determined to make a career change into full-stack development

Apply now

Why students love us.

I loved Code Chrysalis! I'm so happy I joined because it filled a lot of the gaps in my knowledge and gave me a lot of practice. I wish it was longer because [the program] passed way too fast.

Ania Nakayama
Software Engineer

Foundations gave me the structure that I needed to learn how to code. The course both supported and challenged me and, more importantly, taught me how to ask questions & search for answers effectively. I left the program with a good understanding of JavaScript, a ton of new friends, and a lot more confidence!

Katherine Ono
Communication Consultant

I didn't have any experience with coding. But I met fantastic instructors and motivated friends here. I have really enjoyed the course and finally, I could join the Immersive Bootcamp. If I didn't take the class, I would not be here.

Nao Arimura
Software Engineer

Your software engineering journey

Our Foundations program is designed to provide you with a comprehensive introduction to JavaScript coding. The curriculum is built around project-based learning, which means that you will work on real-world projects and learn by doing. This approach provides you with hand-on experience and a deeper understanding of programming fundamentals.

Precourse
1 month
Immersive Course
3 months
Career Support
Lifetime
Interview
2 weeks
Foundations - Learn to Code
5 weeks

Foundations - Learn to Code

To become a top-notch software engineer, mastering the art of coding is a must. And that's where our Foundations course comes into play. Our course offers a meticulously structured that equips you with the fundamental skills of coding in JavaScript, HTML, and CSS. It's the perfect launchpad to ace the Immersive interview and a fantastic opportunity to experience Code Chrysalis and determine if we're the perfect fit for you.

Interview process

We have a multi-step admissions process and only admit students who are fully ready for our course. In this process, you will pair program with an instructor or experienced engineer during a series of technical interviews (most people do between one and four sessions). The process may be challenging but we will encourage you to continue studying and re-interview again. This is not just an entrance exam - it’s also a (free) opportunity to get advice, feedback, study guides, and hands-on practice writing code.

Precourse

Precourse is a mandatory self-paced mini-course with set deadlines in the two months before the Immersive begins. These assignments are entirely different than the fundamentals in our Foundations course and cover more advanced topics that will help you start thinking like a programmer. During precourse, you will join our community, get accountability while studying, and have access to instruction staff.

01
Functional and Object Oriented Programming

Code in the real world is more than just data-in/data-out that you typically see in short coding tutorials. During the development of larger software projects, there will be a number of paradigms for organizing complex code you will be expected to know, including functional and object-oriented programming.

02
HTML & CSS (Javascript)

Regardless of what framework or backend stack your employer uses for your codebase, almost all web applications have a frontend that can be viewed by the user in a browser. HTML and CSS are the basis of all visible content on the web. We emphasize a strong foundation in these technologies to ensure that your project is functional, accessible, and visually appealing.

03
Git

The days of working alone are over. Having experience working on an engineering team is crucial for job interviews. All code needs to be stored somewhere, so “source control” is the main way that engineers can work collaboratively on code. There were many “source controls” in the past, but over the last ten years, almost all companies have switched to using git.

04
Node

JavaScript doesn’t limit you to just web frontend. Node is a version of JavaScript that has been "untethered" from the browser-based frontend and opens up your JavaScript skills to many more platforms and purposes. Node is commonly used for both servers and developer tooling, without having to learn any additional programming languages to get started.

05
Recursion

Recursion is an advanced concept that is easy to skip over -  but any CS grad will have a solid understanding of this topic. It actually appears in the real world frequently, especially when dealing with file systems. Recursion is not simply a technique; it is an entirely different approach to thinking which is common in Functional paradigm code. It is also used in the ideal solutions to many Leetcode-style technical interview problems.

Immersive Course

Most courses teach students specific tools rather than how to program. However, the software industry is fast-paced and each tool becomes quickly outdated - which could make your resume worthless in less than a year. In the Code Chrysalis Immersive, we do keep the tech stacks we teach up-to-date - but we also teach solid engineering practices, historical perspective, and real priorities that will help you keep up with the industry regardless of where it goes.

In our project portion, you will build a solid portfolio of projects in the languages and tech stacks that you want to use and get practical experience working on an Agile development team. Our students have opportunities to get real world experience adding features to a live codebase, which they can draw from in interviews. Our curriculum is optimized to help you compete in an ever more competitive job market - whether you are job searching in Japan or abroad.

01

Data Structures & Complexity Analysis

Computer Science graduates often have a lot of experience with these topics, and because of that technical interviews test heavily for knowledge of data structures and complexity. Data these days is huge, so it’s not enough for things to just work - you also need to know how to make things work efficiently.

02

Agile Methodologies and Practices

Writing software in a group is different than writing software on your own. Agile is a set of industry-standard processes and practices used in professional environments to facilitate team efficiency. Experience in Agile practices (such as effective Pair Programming and Test Driven Development) is highly sought by hiring managers and recruiters to find engineers ready to be productive on their first day.

03

SQL, Databases, & Schema Creation

Databases can handle orders of magnitude more data than Excel spreadsheets. SQL (pronounced "sequel") is one of the most common languages currently used in modern software solutions to interact with databases, and is an in-demand skill at any company that deals with large amounts of data.

04

HTTP & Express

Frameworks and languages come and go, but HTTP is the basis of all communication on the internet. In addition to teaching students Express (the most common HTTP server framework for Node), we instill a fundamental understanding of HTTP itself to guarantee that they can navigate the constantly evolving world of web development for years to come.

05

API Architectures

Developing code in large organizations requires good communication not just between people, but between different pieces of code. APIs are the connection between large code components and learning how to develop an effective API is critical in any organization where the code you use is consumed by other teams. We teach common architectural guidelines (such as REST) for how to create a professional-quality API.

06

Front-end UI Frameworks

After gaining a solid foundation in HTML and CSS fundamentals and Functional/Object Oriented programming paradigms, there are many frontend frameworks to choose from. We teach a framework called React, which is the most common frontend framework currently in demand in both the Japanese market and abroad. We heavily emphasize the skills that will allow you to quickly pick up any front-end framework used at your future workplace, whether it is React, Vue, Angular, or even an in-house framework specific to your company.

07

CI/CD & Deployment

Writing code and building a product is only part of the product lifecycle. How does something you created on your computer get published to the rest of the world? How do you release updates? How can you be confident that the product will work after it's released? Knowledge of Continuous Integration/Continuous Delivery (CI/CD) and related workflows is a critical skill for modern development pipelines.

08

Programming Language Learning (”Polyglottal”)

Engineers who only know one programming language are very common, so you can set yourself apart by knowing multiple languages. During “Polyglottal” week, you will learn a second programming language (of your choosing) and build a project for your portfolio in that language. Most companies use at least two languages (sometimes more). Based on what type of company you want to work for, we will guide you to choose the best second language for your resume.

09

Senior Project

The Senior Project phase will give you real experience working at your own mini-startup for a few weeks. Your team will have to collaborate from project inception all the way to delivery, allowing you to encounter the realities of working on an engineering team. You can choose any tech stack for this project to build your portfolio, and get critical first hand experience with testing, documentation, and security issues. When interviewers ask, “What is a technical problem you’ve encountered and how did you solve it?” this project will be the source of your answers.

Career Support

We offer lifetime career support to our students. We will help you get your first junior engineer position, as well as helping you transition to senior roles further on in your career. Our career support process will organize and optimize your job search to help focus in on the best opportunities.

Curriculum

Our curriculum is industry-relevant and focuses on the skills that are in demand in the tech industry. This is   an ideal choice for those looking for a career change or looking to upskill for those already in the field. Throughout the program, you will learn about developer environment, learn fundamentals of coding and develop the skills necessary to build your own web applications.

01. Industry Perspective

  • List item
    Impostor Syndrome
  • List item
    Types of Programming Jobs
  • List item
    Common Coder Misconceptions
  • List item
    JavaScript Libraries & Frameworks

02. JavaScript Fundamentals

  • List item
    Values & Variables
  • List item
    Conditionals
  • List item
    Blocks and Scope
  • List item
    While Loop
  • List item
    Functions and Return
  • List item
    Arrays

03. JavaScript Advanced

  • List item
    Debugging and Call Stack
  • List item
    Code Style
  • List item
    Objects as Complex Types
  • List item
    Methods
  • List item
    Functions as Values
  • List item
    Data protection with Closures
  • List item
    For Loops
  • List item
    Value vs Reference
  • List item
    Objects as Lookups
  • List item
    Helpful Built-in Tools
  • List item
    Map & Filter

04. Standalone HTML

  • List item
    HTML Basics
  • List item
    CSS Basics
  • List item
    CSS Position
  • List item
    CSS Selectors
  • List item
    HTML Modern

05. HTML + JS

  • List item
    DOM
  • List item
    DOM Events
  • List item
    HTML + CSS + JavaScript
Team icon

Planning to take the Immersive?

Get a discount on Immersive when you take Foundations or Foundations Lite!
We will take off the tuition price of your Foundations or Foundations Lite course if you join the Immersive.

Choose your course

Our Foundations program is designed to provide you with a comprehensive introduction to coding. The curriculum is built around project-based learning, which means that you will work on real-world projects and learn by doing. This approach provides you with hand-on experience and a deeper understanding of programming fundamentals.

Remote
5 Weeks |
60+hours of class time |
Mon, Tue, Wed, & Thu
Mar 25, 2024
-
Apr 25, 2024
19:00
 - 
22:00
Application Deadline:
March 18, 2024
150,000 JPY
(tax included)
Apply now
March 18, 2024
0
days until application deadline
Last day to apply
March
May 13, 2024
-
Jun 13, 2024
19:00
 - 
22:00
Application Deadline:
May 6, 2024
150,000 JPY
(tax included)
Apply now
May 6, 2024
0
days until application deadline
Last day to apply
May
Jul 1, 2024
-
Aug 1, 2024
19:00
 - 
22:00
Application Deadline:
June 24, 2024
150,000 JPY
(tax included)
Apply now
June 24, 2024
0
days until application deadline
Last day to apply
July
Jul 29, 2024
-
Aug 29, 2024
19:00
 - 
22:00
Application Deadline:
July 22, 2024
150,000 JPY
(tax included)
Apply now
July 22, 2024
0
days until application deadline
Last day to apply
July

Community-focused Tech Education

Whether you're a complete beginner or have some prior experience, our Foundations program offers a unique learning experience that will help you achieve your goals and build strong coding basics. With a focus on project-based and hands-on learning, you'll gain valuable experience that will prepare you for a successful career launch in web development.

Career support icon
Lifetime Access

Experience  the  ultimate  advantage  with  our  Lifetime Access  package.  Our  comprehensive  curriculum  is designed to equip you with the essential skills you need to  succeed  in  today's  fast-paced  tech  landscape.  Say goodbye to coding in your browser and hello to practical,hands-on knowledge that you can apply right away.

JavaScript foundation
JavaScript Projects

Get ready to take your skills to the next level with our JavaScript projects. A strong foundation is key to keeping up with the rapid pace of technological advancements,and we've got you covered.

Slack icon
Slack Community

Join  our  exclusive  Slack  Community  and  connect  with like-minded  go-getters  and  high  achievers  who  share your  goals.  Learning  is  more  engaging  and  fun  when you're surrounded by a supportive community of staff and graduates, available to you for life.

Career longevity icon
Pair Programming

Experience the power of collaborative learning with our pair  programming-based  classes.  Work  alongside  your classmates  and  learn  how  to  communicate  complex technical topics with ease. Level up your skills with our interactive learning and highly effective approach

Admissions & FAQ


How do I apply to the Foundations Program?
Dropdown arrow
I am a beginner. Can I join Code Chrysalis?
Dropdown arrow
Does Code Chrysalis take foreign students or students not based in Japan?
Dropdown arrow
Go to help center

See if a Code Chrysalis education is right for you.

Become a full-stack software engineer in 3-months with lifetime career support.

Book a video chat or school visit
Students photo
#Node.js
#JavaScript
#PostgreSQL