0% found this document useful (0 votes)
305 views

AttainU Software Engineering Syllabus

AttainU is offering its Software Engineering syllabus for free. AttainU gives free engineering education and you pay only when you get a job

Uploaded by

Lakshay Garg
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)
305 views

AttainU Software Engineering Syllabus

AttainU is offering its Software Engineering syllabus for free. AttainU gives free engineering education and you pay only when you get a job

Uploaded by

Lakshay Garg
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

Software Engineering

Full-Stack Web Development

Syllabus
Gear Up

Command Line
● File management
● Linux commands

Version Control System


● Github

Shallow Dive

HTML & CSS


● HTML Tags
● CSS properties & values
● CSS selectors
● CSS transitions, gradients & animations
● CSS box model
● CSS framework - Twitter Bootstrap

Javascript
● Types, operators, statements, objects, functions & classes
● Dom manipulation, HTTP requests & CSS scripting
● jQuery and Lodash
● HTML5 APIs

Web Architecture
● Client-server model

Node
● Introduction to ES6
● The event loop
● Modules & the NPM
● Commonly used Node APIs & modules

Express
● Installation, Express generator, Routing & Static files
● Templates, Middlewares & Database integration
● Authentication & authorization
● Introduction to REST APIs
● REST APIs using Express

Databases
● Introduction to NoSQL databases
● NoSQL vs RDBMS
● MongoDB
○ MongoDB extended JSON
○ Databases & collections
○ Data model & documents
○ Indexes, Aggregations & Transactions
○ Mongoose library
○ Using MongoDB with Express

Shallow Dive Project

Deep Dive Front End

HTML & CSS


● CSS flexbox
● CSS preprocessors - SASS and LESS
● SEO fundamentals
● Design fundamentals - Colour theory, Typography, Whitespace & Interface design

Javascript
● ES6 - Tools, Destructuring, Arrow functions, Template literals, Classes, Let & Const,
Iterators, Generators & Modules
● Package managers - NPM & Yarn
● Linters - ESlint & JSlint

React & Redux


● JSX
● Events, Components & Props
● Virtual DOM & Lifecycle methods
● Redux - Actions, Reducers & Store
● React app deployment
● React app testing - Mocha, Chai & Jasmine
● Progressive web apps

Data Visualization
● Introduction to visualization
● Introduction to D3

Deep Dive Front End Project

Deep Dive Back End

Node
● Node Buffers, Timers & Streams
● Filesystem, TCP & HTTP
● Debugging & Unit Testing
● Character encodings - Unicode

Express
● Installation, Express generator, Routing & Static files
● Templates, Middlewares & Database integration
● Authentication & authorization
● Introduction to REST APIs
● REST APIs using Express
● Search engines (full text)
● Express app deployment
Devops
● Introduction to AWS & Heroku
● Remote login using SSH
● Setting up web server, DB server and HTTPS in Linux
● Basic server security

Databases
● Relation databases vs NoSQL databases
● SQL (using PostgreSQL)
○ Creating and populating a relational database
○ Querying & filtering
○ Grouping & aggregates
○ Subqueries & Joins
○ Index
○ Transactions
○ Introduction to ORM & Sequelize
○ Using Postgresql with Express

Core Software Engineering

Python programming language


● Types & operators
● Statements, exceptions, functions & classes
● Modules, packages & tools

Data Structures & Algorithms


● Data structures
○ Linked list & Doubly linked list
○ Queue, Priority Queue & Stack
○ Heap
○ Hash table
○ Tree
○ Graph (directed & undirected)
● Algorithms
○ Algorithm complexity & the Big O notation
○ Search
○ Sort
○ Linked list
○ Trees
○ Graphs
○ Basic cryptography
● Problem-solving
○ Brute force algorithms
○ Greedy algorithms
○ Divide and conquer
○ Dynamic programming
○ Backtracking

Operating Systems
● The role of operating systems
● OS organization - the kernel, device drivers & user space
● Features - Abstraction, multi tasking, security & performance
● Communicating with the Kernel - System calls & privileges
● The process model, context switching & scheduling
● Virtual memory
● I/O fundamentals

Computer Networks
● Reference models
○ Physical layer, data-link layer, network layer, transport layer & the application
layer
○ TCP/IP reference model
○ OSI reference model
● Protocols
○ TCP/IP
○ DNS, FTP, SMTP & POP, HTTP, SCTP
○ IPV4 & IPV6
● Network examples (Internet, 802.100 & 4G mobile networks)
● Linux networking tools
● Network security

Computer Architecture
● Number representation (binary, octa and hexa)
● The CPU
● Memory
● Peripheral systems
● "Small" to "Big" systems and SMP
● Programming languages
○ Assembly and linking
○ Compiled & interpreted programs
○ Concept of dynamic linking
○ Building of a Linux executable

System Design
● OOP & Design patterns
● SOLID, KISS & YAGNI

Software Development Methodologies


● States - planning, designing, programming, documenting, testing, and bug fixing
● Different methodologies
○ Waterfall
○ Spiral
○ Prototyping
○ Agile

Capstone Project

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy