You are on page 1of 6

Web design syllabus

Preparation (3 weeks)
To make sure each student has a similar base knowledge entering the bootcamp, you'll first complete a
3 week preparation course where you'll meet with your personal mentor 3x/week and have access to
daily office hours. You'll learn HTML/CSS and JavaScript fundamentals as you push your code to
Git/Github with the command line. Expect to commit 15-20 hours per week. It's important that you're
confident about your success before you make the decision of quitting your job.
Topics: HTML, CSS, JavaScript, Git/Github, Command Line
Weeks 1-2: JavaScript Programming and Frontend Development
Learn intermediate concepts in JavaScript programming and Frontend Development. Master object-
oriented programming with JavaScript, and concepts like scope and closures. Make AJAX calls to a
range of API's, and gain experience communicating about code as your pair program.
Topics: JavaScript, Object-Oriented Programming, AJAX, JSON, Responsive Design
Weeks 3-5: Backend Development and Databases with Node.js
Gain experience with the Model-View-Controller architecture, first without a framework, and then
using Node.js and Express. Build API's with Node.js that serve data to your frontend, and write tests
that ensure your software works. By using Node on the server, you'll learn JavaScript deeply instead of
having to switch to a new language.
Topics: Web Frameworks, Node.js, MongoDB, SQL databases, RESTful API's, Test-driven
Development, Authentification, Deployment
Weeks 6-7: Frontend Development with React and Redux
Use React a fast-growing JavaScript library developed by Facebook to build dynamic Single Page
Applications. Build web components to make your applications modular, and learn the Flux application
architecture to organize your code.
Topics: React, Flux, Redux, Webpack, Babel
Weeks 8: Building a Fullstack JavaScript app
Combine everything you've learned thus far in building a full stack application. You'll work in teams to
spec and execute on projects that use Node API's to serve data to React frontends. You'll also learn how
to collaborate in a larger team using GitHub and Trello for project management.
Topics: React, Node.js, Team communication, Project planning
Break Week
The break week is meant to do three things: First, create time for you to relax and catch up on parts of
life you've had to de-prioritize. Second, give you a chance to strengthen your understanding of any
concepts from the first half that you're currently struggling with. And third, kick off preparation for
your job search. There won't be any scheduled sessions here but you will be asked to prepare or update
drafts of your resume, personal story, and portfolio wireframe.
Topics: Resume, Personal Story, Portfolio, Job Postings
Weeks 9-11: Data Structures, Algorithms
Practice using algorithms and data structures to solve technical challenges. Learn to think about code
efficiency and optimization, and prepare for the kinds of problems you'll face in interviews. After
focusing primarily on concepts and technical exercises in the first two weeks, you'll apply that
knowledge as you build another full stack app in teams.
Topics: Sorting, Searching, Recursion, Arrays, Lists, Trees
Weeks 12-13: "Flex" and "Swap" weeks
To prepare yourself for a successful career as an engineer, you'll focus these two weeks on two
important skills: picking up a new framework/language in a few days and learning how to quickly read
and modify someone else's code. By the end of Flex week, you'll have prepared a 10 minute
presentation on the skill, how you learned it, and what you built with it. In "swap" week, each student
will work on their own unique project on Monday/Tuesday then switch with another student's project
on Wednesday and finish it off. The underlying goal will be to improve the rate at which you
read/digest code and learn technical topics.
Topics: Learn to learn, Read and contribute to an existing codebase
Weeks 14-16: Capstone Project
Prototype and build capstone projects in small groups. This section combines everything you've learned
and simulates the challenges of working on the job as a developer. Each team will have their own
product manager, project manager, and user/design lead, you'll join daily standups led by an instructor,
and implement the same tools and processes that product teams use daily on the job.
Topics: Product Development, Collaboration, Deployment, User Experience, Iteration
Weeks 16+: Placement Phase
Attend daily standups with a career coach and peers until you get hired as an engineer. Together, you'll
continue refining your resume and portfolio, write standout cover letters, and prepare for interviews.
We'll also make 3-5 direct introductions to hiring managers on your behalf. If you're not placed within
6 months of graduation, we'll refund 100% of your tuition.
Topics: Portfolio, LinkedIn, Resume, Cover Letters, Networking, Interviewing, Salary Negotiation
Preparation (3 weeks)
To make sure each student has a similar base knowledge entering the bootcamp, you'll first complete a
3 week preparation course where you'll meet with your personal mentor 3x/week and have access to
daily office hours. You'll learn HTML/CSS and JavaScript fundamentals as you push your code to
Git/Github with the command line. Expect to commit 15-20 hours per week. It's important that you're
confident about your success before you make the decision of quitting your job.
Topics: HTML, CSS, JavaScript, Git/Github, Command Line
Weeks 1-2: JavaScript Programming and Frontend Development
Learn intermediate concepts in JavaScript programming and Frontend Development. Master object-
oriented programming with JavaScript, and concepts like scope and closures. Make AJAX calls to a
range of API's, and gain experience communicating about code as your pair program.
Topics: JavaScript, Object-Oriented Programming, AJAX, JSON, Responsive Design
Weeks 3-5: Backend Development and Databases with Node.js
Gain experience with the Model-View-Controller architecture, first without a framework, and then
using Node.js and Express. Build API's with Node.js that serve data to your frontend, and write tests
that ensure your software works. By using Node on the server, you'll learn JavaScript deeply instead of
having to switch to a new language.
Topics: Web Frameworks, Node.js, MongoDB, SQL databases, RESTful API's, Test-driven
Development, Authentification, Deployment
Weeks 6-7: Frontend Development with React and Redux
Use React a fast-growing JavaScript library developed by Facebook to build dynamic Single Page
Applications. Build web components to make your applications modular, and learn the Flux application
architecture to organize your code.
Topics: React, Flux, Redux, Webpack, Babel
Weeks 8: Building a Fullstack JavaScript app
Combine everything you've learned thus far in building a full stack application. You'll work in teams to
spec and execute on projects that use Node API's to serve data to React frontends. You'll also learn how
to collaborate in a larger team using GitHub and Trello for project management.
Topics: React, Node.js, Team communication, Project planning
Break Week
The break week is meant to do three things: First, create time for you to relax and catch up on parts of
life you've had to de-prioritize. Second, give you a chance to strengthen your understanding of any
concepts from the first half that you're currently struggling with. And third, kick off preparation for
your job search. There won't be any scheduled sessions here but you will be asked to prepare or update
drafts of your resume, personal story, and portfolio wireframe.
Topics: Resume, Personal Story, Portfolio, Job Postings
Weeks 9-11: Data Structures, Algorithms
Practice using algorithms and data structures to solve technical challenges. Learn to think about code
efficiency and optimization, and prepare for the kinds of problems you'll face in interviews. After
focusing primarily on concepts and technical exercises in the first two weeks, you'll apply that
knowledge as you build another full stack app in teams.
Topics: Sorting, Searching, Recursion, Arrays, Lists, Trees
Weeks 12-13: "Flex" and "Swap" weeks
To prepare yourself for a successful career as an engineer, you'll focus these two weeks on two
important skills: picking up a new framework/language in a few days and learning how to quickly read
and modify someone else's code. By the end of Flex week, you'll have prepared a 10 minute
presentation on the skill, how you learned it, and what you built with it. In "swap" week, each student
will work on their own unique project on Monday/Tuesday then switch with another student's project
on Wednesday and finish it off. The underlying goal will be to improve the rate at which you
read/digest code and learn technical topics.
Topics: Learn to learn, Read and contribute to an existing codebase
Weeks 14-16: Capstone Project
Prototype and build capstone projects in small groups. This section combines everything you've learned
and simulates the challenges of working on the job as a developer. Each team will have their own
product manager, project manager, and user/design lead, you'll join daily standups led by an instructor,
and implement the same tools and processes that product teams use daily on the job.
Topics: Product Development, Collaboration, Deployment, User Experience, Iteration
Weeks 16+: Placement Phase
Attend daily standups with a career coach and peers until you get hired as an engineer. Together, you'll
continue refining your resume and portfolio, write standout cover letters, and prepare for interviews.
We'll also make 3-5 direct introductions to hiring managers on your behalf. If you're not placed within
6 months of graduation, we'll refund 100% of your tuition.
Topics: Portfolio, LinkedIn, Resume, Cover Letters, Networking, Interviewing, Salary Negotiation
Instructors & People

Experts available around the clock.

Instructors
Instructors are the generals of your learning experience. Each day, their lecture presents new concepts,
ties them into old ones, and invites you to think in new ways. With their deep experience in teaching
code, they can see the big-picture and keep you moving towards your goal of becoming a web
developer.

TAs
Imagine having an expert walk up to you as youre working, to make sure everything is going well and
to help you apply the concepts you just learned. When youre pair programming, TAs will drop into
each pairing session to teach debugging and problem solving. TAs are also always on call when you
need help.
Transitioning from traditional academia to an online bootcamp has been incredibly
exciting. We iterate over presentation slides, curricula, and projects every single day to
make sure every cohort has a better experience than the last. The flexibility of online
learning allows us to continuously improve our education to meet industry expectations and
adapt to student feedback.

Tauhida Parveen, Thinkful instructor

Tauhida Parveen hails from Florida, with deep expertise in engineering and education. Most recently,
she was the University Department Chair of the software engineering program at Keiser University.
Tauhida has also published two books, keynoted conferences, and worked at Yahoo, Sabre Holding,
and Wikimedia.

1-on-1 mentor
Students who learn 1-on-1 perform better than 98% of students who learn only in a traditional
classroom. Your mentor is an industry expert, who will spend time working directly with you to make
sure that you fully grasp every concept before the next days lecture. Whenever you get stuck, your
mentor gets you unstuck.

Career coach
Your career coach is your 1-on-1 partner in the job hunt. You'll work together to build a strategy to get
interviews, prepare for them, and negotiate the best job offers possible. Think of your career coach as
the final leg in the relay this is the person who gets you to the finish line, with a job as a web
developer.

Mentoring at Thinkful is special. When I first meet a student, theyre both excited and
terrified by what they just signed up for. Over the coming months, well share "aha"
moments, intense periods of debugging, and laughter at silly typos. Ill never get enough of
those frantically eager emails or calls when a student accepts their final job offer.

Jason Humphrey, Thinkful mentor

Jason Humphrey is a software engineer, entrepreneur and investor. When hes not mentoring bootcamp
students or building the frontend for Fidelitys software, Jason spends his time contributing to open
source software.

Program Manager
From the day you start the prep course until you get your first job in web development, your program
manager will be there to support you every step of the way. Their job is to make sure that your
experience as a student is seamless across the board.

Students
Your fellow students are your teammates. During the course, youll build projects together and help
each other move forward. Your classmates will not only be your support system, they'll also be your
friends on this journey. At the end of the day, peer support can sometimes be the most helpful.

Community
Thinkful has a tremendous community of engineers. On Slack our online chat server there are
over 350 mentors as well as over 3000 alumni and students. There will always be someone online,
ready to answer you. Beyond that, there over 40 hours of live video office hours each week, which you
can drop in on to firm up your knowledge of a given topic.

Career prep