0% found this document useful (0 votes)
48 views7 pages

SEF - Tech Syllabus-v12MS-2002

Uploaded by

moala
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views7 pages

SEF - Tech Syllabus-v12MS-2002

Uploaded by

moala
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Full-Stack Web Development

Bootcamp Syllabus

Copyright © SE Factory. All Rights Reserved


SE Factory Program Syllabus

Brief
SE Factory is a ​14-week intensive​ coding bootcamp that produces professional
full-stack web developers with highly competitive technical and soft skills.

With currently 3 batches running per year in two different locations in Lebanon and with
plans for expansion, SE Factory empowers students from different backgrounds and
parts of Lebanon with the skills to conquer and succeed in the job market, impacting
their lives as individuals, their communities, and Lebanon as a whole.

Choice of The Technology Stack


The World Wide Web is the backbone of the Internet and the catalyst of the modern
information age. While numerous technologies have emerged in recent years, namely
mobile and IoT devices, the web remains the undisputed common denominator. Mobile
games, marketing, utilities, service apps and many other categories, all rely on a
somewhat centralized web based back-end to operate at full capacity.

The LAMP (Linux, Apache, MySQL and PHP) stack is at the core of SE Factory’s
curriculum. We have sampled information from prominent tech companies in the
Lebanese market and have found that the LAMP stack (or some variation of it) is still
the dominating choice for a number of reasons (research to be published as part of a
subsequent document).

With that said, SE Factory strives to teach and augment students’ ​problem solving​ and
solution engineering​ capacities. Our teaching methodology is ​technology agnostic​.
For us, and by association our students, languages, databases, servers and other
elements of the existing technology stacks are simply tools which the craftsman
employs in the delivery of reliable solutions abiding by modern industry standards.

SE Factory alumni are currently holding Software Engineering positions at some of the
best local tech companies and startups. Additionally, international companies are
setting up shop in Lebanon to take advantage of SE Factory talent, or relocating
graduates to their premises.

SE Factory alumni have easily adapted to their companies’ technical needs and are
working as front-end (Angular, React), mobile (iOS and Android), back-end (Java-EE,
.NET, php) developers. They continue to impress their employers with their acquired
unique autonomy in analyzing, researching and building solutions.

2
SE Factory Program Syllabus

Topics Covered

Introduction and environment setup


● Introduction to the World Wide Web
○ Historical overview
○ Discussion of HTML, HTTP, W3C, IETF, Net Neutrality
● Introduction to Cloud Computing
○ Evolution and Advantages
○ Distinction between IaaS, PaaS and SaaS
○ Hybrid / Private and Public Clouds
● Linux
○ Historical Overview
○ Distributions and Branches
○ Terminal vs Shell vs Console, Package Managers
○ Introduction to Bash shell and Shell Scripting
● Web Servers
○ Apache HTTP Server
○ Detailed HTTP Protocol Discussion
○ Request / Response Lifecycle
○ Setup and Configuration
● Virtualization
○ Setup and Configuration of Virtual Machines
● Source control with git
○ Historical overview
○ Importance of Source Control
○ Discussion of git & BitBucket

Technical skill set


● Object Oriented Programming​ with PHP
○ OOP Theory
○ Model-View-Controller Design Pattern
○ Separation of concerns
○ Request/Response Cycle
■ Backend-centric approach to web development
■ API development (JSON)
● Relational Databases​ with MySQL
○ Theory

3
SE Factory Program Syllabus

■ Intro to Relational Databases


■ Discussion of Desired Database Features
■ Relations, Attributes, Tuples
■ Constraints
■ Database Operations
■ Data Aggregation
■ Joins
○ MySQL
■ Overview and Syntax
■ Querying
■ Using with PHP
■ Features and Limitations
■ Setup and Configuration
■ Security
● Static Frontend​ (HTML, CSS)
○ Browsers
○ HTML5
○ DOM
○ CSS Declarations
○ CSS Inheritance
○ Selector types, choices and best practices
● Frontend Interactivity​ (Javascript)
○ Language overview
○ Javascript Gotchas and Nuances
■ this​ keyword and function calls
■ Prototypes
■ Objects
○ Javascript best practices and modern standards
● Backend MVC Framework​ (Laravel)
○ Advantages of using frameworks
○ General exploration of available frameworks (in multiple languages)
○ PHP Dependency Management
○ Autoloading
○ PHP Namespaces
● Frontend Framework​ (React)
○ Component Model
○ State management
○ Frontend Routing
○ OOP approach versus functional components

4
SE Factory Program Syllabus

● Web Application Security


○ Offensive versus Defensive practices
○ Attack vectors, vulnerabilities and countermeasures
○ Common web attacks (XSS, CSRF, DoS, SQL-Injection...)
● Cloud Infrastructure​ (AWS)
○ Cloud machines and OS types
○ Cloud core services (EC2, S3, EBS, RDS, Security Groups, ELB)
○ SSH Access
○ Deployment

Soft skill set


Not elaborated in this curriculum.

Bootcamp Delivery

While some of the topics are covered with smaller assignments, students acquire the majority of
the required training through working on projects:
● Project 1: ​Backend-driven web application
○ Phase 1: Database schema design (relational modeling)
○ Phase 2: PHP data access layer implemented
○ Phase 3: PHP web application uses data access layer to provide end-user
functionality
● Project 2: ​Frontend-only web application
○ Javascript
○ Browser local storage
● Project 3: ​Integrated Frontend/Backend Web Application

5
SE Factory Program Syllabus

○ Backend API Development


○ Javascript client asynchronous calls
● Project 4: ​Framework backend-only web application
○ Laravel
● Project 5: ​Interactive framework-based web application
○ Laravel
○ React
● Project 6: ​Group Project​ of up to five members
○ Using git in a team environment
○ Merge conflicts
○ Pull requests
○ Planning and subdivision of tasks
● Final project
○ Student originated project ideas
○ Presented at graduation day
○ Technologies outside of curriculum regularly explored and applied
■ Node.js
■ Angular
■ Ionic
■ Flutter
■ React-native
■ Native-mobile development (Android, iOS)
■ Firebase
■ socket.io
■ Elasticsearch

Guest Technical Workshops


Throughout the program, we host a number of prominent and influential CTOs, Technical
Managers, and Senior Developers to share technical or industry related insights with our
students. Some workshop topics are listed below to give you an idea of what to expect.

● Unit Testing with PHPUnit


● git Workflows, Best Practices and Branching Models
● Explore the power of vim
● Intro to event-drive, async programming with Node.js
● Software Engineering Overview
● IoT Data Aggregation into the Cloud
● Code Analysis and Maintainability

6
SE Factory Program Syllabus

● Building, Releasing and Maintaining Open Source Projects


● Continuous Integration
● Academia vs Industry, which path to choose?
● Scaling Web Applications
● Building Enterprise Solutions

You might also like