After seven years working on low level software development for Windows, we were invited to provide a small training session in 2007 for a hardware manufacturer. Since the beginning, we worked hard to have something that covered the required core concepts about Windows drivers and supply the information needed to have their product working from the scratch. Since then, our course became the first one about Windows kernel development in Brazil.

DriverEntry is a small company, but the word-of-mouth marketing carried us from one customer to the next one. Training bigger and bigger teams, we had the opportunity to prepare students from quite small companies, even stand-alone students, to multi-national ones with more than twenty attendees at a time.

As the technology has evolved, high level programming languages became more and more popular. A developer can do more with less code lines. How easy can one find resources for self-learning or getting trained by professionals? But when talking about operating system integration, low level software skills are still required. The resources to develop such a competence are not found that easily, and when one gets the resource, it frequently assumes the student has solid understanding about some base subjects, which is not the case for most of the young students. Sometimes, the resources have all the needed to get a project developed, but by start reading about the main subject, the students ae taken to wide net of required concepts, leading them far from their original path, usually making them lost with so much details.

With a wide range of specialties, going from computing engineering and electronic signals, through assembly language, operating systems components, kernel drivers, to user-mode software concepts and mechanisms usually written in C\C++ and advanced debugging skills, DriverEntry introduces the subjects in a gradual manner, presenting just what is needed to make our students to have a clear understanding on their first steps on this possibility world that is opening up.