My Mentoring Program “Fundamentals for C++ Professionals”
I’m happy to provide you with more details about my mentoring program, “Fundamentals for C++ Professionals”.
My general idea of the mentoring program is straightforward. I will teach you what you should know about modern C++. Modern C++ includes the core language and the library based on C++17 in 28 stations. Each week, I publish a new station. To master a station, you have to invest about three hours. Therefore, you can integrate my program into your workday.
After my general idea, I want to give you more details about my mentoring.
Title
- Fundamentals for C++ Professionals (Become a C++ Professional in Nine Months)
Stations
Here are all 28 stations. Therefore, you know what you get:
- Introduction
- Literals
- Types: enumerations, pointer, references, and casts
- Types: type deduction with
auto
anddecltype
- Values: initialization, conversion,
const
, andconstexpr
- Values: move semantics and perfect forwarding
- Memory
- Functions
- Classes: attributes and constructors
- Classes: initialization, destructors, and member functions
- Classes:
default
, anddelete
, operator overloading, explicit, access rights, friends, and structs - Inheritance: abstract base classes, access rights, constructors, base class initializers
- Inheritance: destructor, virtuality,
override
, andfinal
, and multiple inheritances - Templates: functions and classes
- Templates: parameters and arguments
- Template Specialization
- Type Traits
- Smart Pointers
- STL: General Ideas (containers, algorithms, iterators, callables, range-based)
- STL: Common Interface of the Containers
- STL: sequential containers and associative containers
- STL: algorithms
- Strings including string views
- Regular Expressions
- In- and Output
- Threads: creation, data sharing, mutexes, and locks
- Threads: thread-local data, thread-safe initialization, condition variables
- Tasks
One Station
I publish on each Friday a new station (content). But I have more valuable content for you if you like.
One station contains theory, practice, and mentoring.
- Theory
- Pure theory with approx. ten slides (video)
- Applied theory with approx. five examples (video)
- Practice
- Explain the exercises (video)
- Explain the sample solutions to the exercises (video)
- Mentoring
- Live Q&A session on each Friday of each week, in which I address questions about the week’s topic; I record this session.
- E-mail queries by participants; I publish the e-mail responses anonymously if appropriate or address them in the Q&A sessions.
There is more one-to-one mentoring.
One-To-One Mentoring
During the program and at the end, I will have a one-to-one mentoring call with each participant. Each one-to-one mentoring call has a unique purpose.
- During the mentoring program: You decide when it should happen. The purpose of this one-to-one call is simple. I want to support you in mastering my mentoring program.
- In the end: I want to provide you with additional guidance for your career as a C++ programmer because you are never done learning.
Additionally, I develop an online library that provides the following content to support your learning.
Online Library
- Videos of very valuable lectures
- A coupon for my educative courses “C++ Fundamentals for Professionals“
- A coupon for my book “The C++ Standard Library“
- Articles to the each station
- Recorded Q&A sessions
- Respond to e-mails if they are relevant to the course
Additional Stations
You have noticed that I wrote about 28 stations, but the program takes nine months (35 stations). After big topics, I do not publish new content but deepen the previous topic. This unique week serves as a buffer to allow participants to work through gaps.
The buffer is necessary for several reasons:
- Short-term bottlenecks in your job or private (vacation or illness).
- Short-term bottlenecks in the mentoring program (many exciting questions have accumulated)
- Deepening of the contents
This week there will be a general Q&A session on Friday, where I will address questions and challenges around my mentoring.
Now, you may ask yourself, should I apply?
For Whom is This Mentoring Program?
First of all, you need a basic knowledge of C++, and you want to become a professional C++ developer in nine months. You have to invest about three hours a week and can, therefore, integrate my program into your workday. In the ideal case, your company supports you with time and money.
Here are a few typical participant profiles I have in mind:
- Young professionals who want to master the start of their career
- Students who wish to prepare for their first job (interview)
- Software developers who want to qualify themselves further professionally
- Team leaders that want to bring their members on the same page
If you don’t know if my program is appropriate for you, write me an e-mail: info@ModernesCpp.de.
Here are a few technical details
Technical Details
- Course start: My goal is to launch this course in April.
- Course size: At least 105 hours, 17.5 training days, or 3 1/2 typical 3-days training.
- Registration: I open the registration window four weeks before the course starts and close it one week before it starts.
- Stay informed: If you want to stay informed, write an e-mail to info@ModernesCpp.de with the subject “Mentoring”. Write me also an e-mail if you need more information.
- Price: Due to this first installment of my mentoring program(and some improvisation), the price of the program is drastically reduced by roughly 50%: about €250.
- For final consumers, I have to add 19% VAT
- For business consumers in Germany, I have to add 19% VAT
In the end, I want to write about my long-term vision.
My Vision
- Build an active C++ community. You help each other to solve your exercises and challenges around modern C++.
- You can master this course at your pace.
- I will develop additional mentoring programs about the following more advanced topics. I will start these other mentoring programs at the end of this year.
- C++20
- Clean Code with Modern C++
- Concurrency with Modern C++
- Design Pattern and Architectural Pattern with C++
- Embedded Programming with C++
- Generic Programming (Templates) with C++