Skip to content

afatom/bootcamp-core-51

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bootcamp Core 51

This repository hosts all code, projects, and exercises developed during an intensive 8-month (1500+ hours) "Advanced Software Developer Workshop" at Experis Software. The program is designed to bridge academic knowledge with "real-world" Hi-Tech industry demands, focusing on low-level systems programming, advanced C/C++, and software engineering best practices.

🎯 Program Focus Areas

The workshop heavily exposes participants to the underlying mechanisms of various software development environments and critical industry issues, focusing on analysis, design, and implementation skills.

📚 Curriculum & Repository Structure

The following topics were covered and are organized into the respective directories:

C Programming & Systems Fundamentals

  • c-intro & c-advanced:
    • Basic C-Programming, C Traps & Pitfalls.
    • Advanced Pointer Techniques and Memory Management.
  • data-structures:
    • Vector/List/Queue/Stack, Binary Search Trees, Hash Tables, and Sorting Algorithms (Quick, Merge, Heap, Radix).
    • Graph Algorithms: BFS, DFS, Dijkstra.
  • ipc & networking:
    • System Programming: Process Management, IPC (Message Queues, Shared Memory), Multi-Threading & Synchronization.
    • Network Programming: TCP/UDP/IP, Multithreaded & Async Client/Server applications.

C++ & Object-Oriented Design

  • oop-generic & oop:
    • Object-Oriented Design Principles (SOLID, UML, Design Patterns, State Machines).
    • Advanced C++: C++ Internals, Advanced Polymorphic strategies, Template Programming, and the STL.
    • C++14/17: Move Semantics, Unique/Shared Pointers, and enhanced algorithms.

Development Lifecycle & Tools

  • linux-dev: (Implied, often covered within other topics)
    • Linux From Scratch (Installation, Shell Scripting), Development Environment & Tools.
    • Advanced Debugging Tools (Strace, Valgrind) and Build Process management (Linkers, Shared Objects).
  • projects:
    • Traditional Project Workflows, Agile Methodologies (TDD, Code Reviews).

🚀 Key Projects

The final section of the workshop included several in-depth projects:

  1. IPC: Cyclical Message Queue Over Shared Memory.
  2. Multi User Chat: Client/Server over TCP & UDP.
  3. Multi User Game (MUD): Utilizing best OOD practices with C++.

🏅 Certification

This work was completed as part of the Experis KickStart program.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors