Prerequisite courses for all students. Understand the architecture of web applications, creating modular applications, professional best practices, request-response cycle, server-side templating, APIs, databases & unit testing, language-independent web server frameworks, and patterns in full-stack web design.
Front End Web Concentration
Create meaningful user experiences, interact directly with users to collect valuable feedback, build visualizations of data, and design amazing modes of user interaction for web, mobile, and desktop applications.
|FEW 2.2||Advanced CSS and Web Design||Mitchell|
|FEW 2.3||Single Page Web Applications||Mitchell|
|FEW 2.5||Data Visualization & Web Graphics||Mitchell|
|FEW 2.9||Advanced Technical Seminar (GraphQL)||Mitchell|
Back End Web Concentration
Learn the patterns, practices, and paradigms that ensure you can use, develop, and release standardized server-side applications. Work with syntactic language features, web applications and APIs, deployment, web security, and scaling.
|BEW 1.2||Authentication, Associations, & Advanced Queries||Meredith|
|BEW 1.3||Server-Side Architectures & Frameworks||Dani, Meredith, Mitchell|
|BEW 2.1||Advanced Web Patterns in Node.js||Braus, Dani|
|BEW 2.2||DevOps, Deployment & Containers||Dani, Jay|
|BEW 2.3||Introduction to Web Security||Dani|
|BEW 2.4||Decentralized Apps & Distributed Protocols||Dani|
|BEW 2.5||Go - Patterns & Practices in Strongly Typed Ecosystems||Dani|
Learn the theory and application of the entire product development process for creating interactive mobile iOS applications. Work with Swift, and advanced frameworks used in industry along with mobile-specific programming paradigms.
|MOB 1.1||Introduction to Swift||Adriana|
|MOB 1.2||Introduction to iOS Development in Swift||Adriana|
|MOB 1.3||Dynamic iOS Applications||Adriana|
|MOB 2.1||Local Persistence in iOS||Adriana|
|MOB 2.2||2D Mobile Game Development||Adriana|
|MOB 2.3||Concurrency & Parallelism in iOS||Adriana|
|MOB 2.4||Advanced Architectural Patterns in iOS||Adriana|
|MOB 2.9||Advanced Technical Seminar (MOB)||Adriana|
Learn to understand, process, visualize and extract value from data through analysis, building appropriate models to predict unseen data, use data with neural networks to mimic human perception, and implement recommendation systems.
Computer Science (Core)
How computers work. The fundamentals of programming, software development. Starting with the basics like variables, conditionals, and loops and building further into complex algorithms, advanced data structures, graph theory, and other programming concepts.
|CS 1.0||Introduction to Programming||Joi, Jess|
|CS 1.1||Object Oriented Programming||Joi, Jess|
|CS 1.2||Introduction to Data Structures||Jess, Joi, Alan|
|CS 1.3||Core Data Structures and Algorithms||Alan, Jess, Joi|
|CS 2.1||Advanced Trees & Sorting Algorithms||Alan, Jess|
|CS 2.2||Advanced Recursion & Graphs||Anne, Meredith|
Software Product Development
Understanding the software development process and foundational skills of successful engineers. Everything from building a startup to working on engineering teams, personal and professional development, AGILE, SCRUM, marketing and other software development skills.
|SPD 1.1||Introduction to Software Development||Dan, Braus, Mitchell|
|SPD 1.2||Agile Product Development & UI/UX||Dan, Adriana, Mitchell|
|SPD 1.3||Team Software Project||Dan, Braus|
|SPD 1.41||Engineering Careers 1: Communication & Interviewing||Meredith, Braus|
|SPD 1.5||Engineering Careers 2: Management and Leadership||Jay, Dan, Dani|
|SPD 2.1||Industry Collaboration Project Part 1: Client Work||Dan|
|SPD 2.2||Industry Collaboration Project Part 2: Analytics & Growth||Dan, Dani|
|SPD 2.31||Testing and Architecture||Kami|
|SPD 2.41||Onboarding into Companies||Kami, Jay|