diff --git a/roles-responsibilities/technical-training-program-structure.md b/roles-responsibilities/technical-training-program-structure.md new file mode 100644 index 0000000..e56f2ff --- /dev/null +++ b/roles-responsibilities/technical-training-program-structure.md @@ -0,0 +1,57 @@ +# Technical Training Program Structure + +## **Pre-requisites** +These are the foundational concepts you should be comfortable with before starting the training program: + +- **Revision Control (Git)** + - Working knowledge of Git commands like clone, commit, push, pull, and branching. + - [Scaler Git Free Resource](https://www.scaler.com/topics/git/) + +- **Databases (SQL and MySQL)** + - Understanding relational databases and basic SQL queries (SELECT, INSERT, UPDATE, DELETE). + - [Scaler SQL Resource](https://www.scaler.com/topics/sql/) + +- **Programming Language: Java** + - Solid grasp of [OOP concepts](https://www.scaler.com/topics/course/object-oriented-programming-java/), syntax, and core libraries. + - [Scaler Java Resource](https://www.scaler.com/topics/java/) + +- **CS Fundamentals** + - **[Data Structures and Alogorithims(DSA)](https://www.scaler.com/topics/data-structures/):** Learn how data is stored and processed efficiently + - **[Operating System (OS)](https://www.scaler.com/topics/operating-system/):** Process management, memory management, deadlocks. + - **Database Management System (DBMS):** Indexing, normalization, transactions. + - **[Computer Networks (CN)](https://www.scaler.com/topics/course/free-computer-networks-course/):** OSI model, TCP/IP, HTTP basics. + - **Compiler Design (CD):** Lexical analysis, parsing basics. + +- **Optional but Recommended** + - **Web Development:** Basics of HTML, CSS, and JavaScript. + - **[REST APIs](https://www.scaler.com/topics/what-is-rest-api/):** Understanding request/response structure. + - **Moqui Framework:** Familiarity with its architecture and use cases. + +## **Training Modules** +Once the prerequisites are clear, the following modules will be covered in depth: +- **Software Development Life Cycle (SDLC)** + - Understanding Waterfall, Agile, and Scrum methodologies. + - Real-world application of SDLC in projects. + - [Scaler SDLC Guide](https://www.scaler.com/topics/software-engineering) + +- **Java Advanced Concepts** + - **JDBC connectivity:**Establishing connection between webapp and database. + - **JSP & Servlets:** Fundamentals of Java web development. + - **REST API (POST Methods):** Creating and consuming APIs. + - **Collections Framework:** Lists, Sets, Maps, and their internal implementations. + - **Exception Handling:** Best practices for robust error management. + - [Scaler Java Advanced Resource](https://www.scaler.com/topics/advanced-java-programming/) + +- **SQL Advanced Concepts** + - **Query Cost Optimization:** Writing efficient queries, indexing strategies. + - **Window Functions:** RANK, ROW_NUMBER, PARTITION BY usage. + - [Scaler SQL Window Functions](https://www.scaler.com/topics/sql/window-functions/) + +- **System Design** + - **Low-Level Design (LLD):** Object-oriented design patterns, SOLID principles. + - **High-Level Design (HLD):** Scalability, load balancing, databases, caching. + - Free Resources: + - [Arpit Bhayani YouTube (System Design Deep Dives)]([https://www.youtube.com/@arpitbhayani](https://www.youtube.com/watch?v=1r9bPisYaOQ&list=PLsdq-3Z1EPT36NJXTutvKcreetuHCr9a-)) + - [Scaler System Design Resources](https://www.scaler.com/topics/system-design/) + +--- diff --git a/sde-program.md b/sde-program.md index 5deb5a9..68f79d8 100644 --- a/sde-program.md +++ b/sde-program.md @@ -1,4 +1,4 @@ -# What? +## What? Learn building business automation software. Build skills in following categories @@ -11,15 +11,6 @@ Build skills in following categories ## How? This training program uses a learn-by-doing approach. You'll gain practical experience by developing a software solution for **[NotNaked](ubpl/NotNaked/Introduction.md)**, a direct-to-consumer fashion brand. -## Prerequisites: Software Development Fundamentals -This training program requires a solid foundation in software development principles. Please review the following refresher resources to ensure you're adequately prepared: - -* **[Revision Control (Git)](https://www.scaler.com/topics/git/):** A working understanding of Git is essential. -* **Databases [SQL](https://www.scaler.com/topics/sql/) and [MySQL](https://www.scaler.com/topics/course/sql-using-mysql-course/):** Familiarity with SQL and MySQL is crucial. -* **Programming Language [Java](https://www.scaler.com/topics/java/):** Proficiency in [Java](https://docs.oracle.com/javase/tutorial/) is required. -* **Optional but Recommended:** Basic Web Development (HTML, CSS, JavaScript), REST APIs, and the Moqui Framework. - -## [CS fundamentals](cs-fundamentals) for Engineers ## Training program outline * You are assigned project to develop software for **[NotNaked](ubpl/NotNaked/Introduction.md)**. NotNaked is a D2C fashion brand. @@ -28,6 +19,14 @@ This training program requires a solid foundation in software development princi * build server side **[Moqui](https://www.moqui.org)** application as per the SOA design principles. * publish REST API * Integrate with [Shopify](https://shopify.dev/docs/api/) eCommerce store. + + ## Software Development Program Structure + +- [**Pre-requisites**](roles-responsibilities/technical-training-program-structure.md#pre-requisites): +These are the foundational concepts you should be comfortable with before starting the training program. +- [**Training Modules**](roles-responsibilities/technical-training-program-structure.md#training-modules): +Once the prerequisites are clear, the following modules will be covered in depth. + ### Module 0: Know your business domain * [How HotWax's OMS solve bussiness requirments of NotNaked](https://www.hotwax.co/product/omnichannel-order-management-system/)