16 October 2023
An American semiconductor supplier company, a leader in the industry, wanted to provide their software engineering team based in London with expert C++ training. They partnered with JBI Training, a technical training company, to deliver a comprehensive 4-day C++ course tailored to their engineers' experience levels.
The goals were to expand the engineers' knowledge of modern C++ development techniques, equip them with skills to write more robust and efficient C++ code, and provide best practices for avoiding common C++ pitfalls. Given the critical systems the team builds, having a deep understanding of C++ would allow them to fully utilize its capabilities while minimizing bugs and security flaws.
The carefully designed course curriculum covered a wide range of topics:
The training was led by senior C++ expert and instructor with over 15 years industry experience. His engaging and humorous teaching style combined with deep technical knowledge delivered a rewarding learning experience.
A key aspect of the training was the hands-on coding exercises after each module. These allowed the engineers to immediately apply what they had learned to write, compile, and debug C++ programs.
The exercises gradually increased in complexity, building real competence. One example was using smart pointers like unique_ptr to manage dynamically allocated memory rather than raw pointers, a common source of bugs. Another was practicing RAII by writing a class that acquired and released a system resource in its constructor/destructor.
The engineers shared their solutions and discussed them with the instructor and each other to reinforce concepts. He provided expert feedback and tips for improvement.
To facilitate the coding exercises, the team used the onlineGDB site. This browser-based IDE allowed them to quickly write, compile, run, and debug C++ code without any environment setup. It was easy to share code snippets and provide live debugging assistance.
The intensive 4-day training was highly effective at expanding the software engineers' C++ skills. The layered curriculum structure built their knowledge incrementally while drilling key concepts through practical exercises.
In their feedback forms, the engineers rated the training 10/10 on all aspects - instructor, presentation, content, and structure. They praised the instructors outstanding teaching abilities and knowledgeable explanations of complex topics. The hands-on nature kept them continuously engaged.
Here are some of the benefits and outcomes highlighted:
The software team lead was very pleased with the training's impact. He noticed engineers applying what they had learned right away in their current projects. Code reviews also showed increased use of smart pointers, RAII, and other modern practices.
The lead planned to continue leveraging JBI's experts to provide follow-on advanced C++ courses. Potential future topics included:
In addition, the engineers suggested these other JBI courses would be valuable: Python, Professional Code Practices. They also recommended advanced or follow-up C++ training on more complex topics as well as courses in Information Security, Python Machine Learning, DevOps Introduction, and more.
By investing in continuous C++ training, he aims to build one of the most skilled and capable software engineering teams to create performant systems powering their cutting-edge products.
This case study showed the significant benefits of partnering with training experts like JBI for technical upskilling. Their well-structured C++ course delivered an excellent learning experience that greatly expanded the software engineers' skills.
The company is now empowered to develop software assets that fully leverage C++ capabilities. Their talented engineers can craft robust, high-performance systems to help the semiconductor company continue delivering innovative solutions to customers worldwide.