
Today we will talk about the development of training materials and training in software companies. I see from my own experience and that of colleagues from other companies that this process is far from always fully established, and sometimes not completely adjusted (for example, an engineer or a technical support employee is involved in teaching materials, and then this is the residual principle).
In this article we will answer the following questions:
- Planning the development of training materials (how long will it take to develop?)
- Analysis of the data to be included in the training: with whom to interview? How to understand customer needs?
- Training within the company and customer training. What is the difference?
- Specificity of the training: offline or webinar?
- What training materials are provided and what are their benefits?
Immediately, I’ll clarify that we’ll talk about training materials for software products that are relatively difficult to install and use, which include enterprise-class solutions - from ERP systems to cloud platforms for service providers, an example of which could be
Odin Service Automation ). Typically, the development of such solutions involved teams of 50-150 people, and use the product of different categories of users:
- system administrators
- technical support staff
- resellers
- end users
- accountants
- marketing and sales professionals
Creating training for less complex products, such as a web or mobile application for the end user, is the topic of a separate article.
How does this work in our company?
Initially, our training department existed in the form of two separate departments, and this is why:
- At a certain point, due to the very large staff expansion in the Novosibirsk office, we needed to train many new support engineers for the year. It was obvious that it was unprofitable to conduct training with the help of already completed engineers, since this would permanently disconnect them from their main work. They came to the conclusion that we need a separate person who will train beginners full time. As a result, this department expanded to a few people to provide operational training on all products within the company.
- At the same time, a training department for clients began to emerge in the Moscow office. The reason is simple: it was not easy for them to deal with a complex information product on their own. Then it was decided to send key development personnel to customers. In this decision, there were pros and cons: on the one hand, programmers trained IT administrators or exactly the same engineers responsible for operating our software on the client side, and, therefore, made the client's life easier. On the other hand, it was not always possible to allocate a developer (and he still needed time to create a training). Most often, developers love to program and do not like to learn.
Over time, it became clear that it would be optimal if the education department was one - and they were combined.
')
Advice to companies that are only thinking about education as a separate direction: in most cases, internal and external training courses intersect quite strongly on topics, so it’s better if one team does it. Below I want to give a few examples of what your trainings might be:
- Basic functioning of the product - will be of interest to new customers, novice engineers and developers of the company (it is difficult to work with the product without introducing its basic functionality)
- Problem solving - technical support staff and some professionals in the client organization (system administrators, network engineers, etc.)
- Internal product components (integration with third-party services) - training is needed both for system integrators and within the company.
At the moment, we have 10 people working in our education department, each of whom has expertise in one or several products, and in total we cover requests for creating materials for all the company's products.
An employee of the training department must have two key skills, namely: to have competence in the product itself (at the engineer level) and be able to present this knowledge in a form that is easy to learn. It is also worth clarifying that we have a clear distinction between the employees who create the training and the trainers who read this training. These are two different specialties that can be compared with the study of English: there are methodologists who compose textbooks and materials, and there are teachers who teach using these textbooks.
Today, in Odin (
approx. Odin
is a new Parallels brand that combines hosting software and service providers ), trainings for all products have been developed, and on average from one to three trainings per week (one training takes two to three working days ). Scheduling goes a few months ahead.
Why trainings are important?

Before describing the processes and giving advice, I want to clarify why all the same training is important? After all, there is documentation, where you can find technical specifications for software, there is a support service, where you can ask questions.
The use of training programs helps the client’s employees quickly and comfortably get acquainted with the products and start working with them. Even if the cost of training is quite high for the client, it will still be beneficial for him, since it only takes a few days instead of a few weeks of self-study.
In addition, in difficult cases, the partner company may even refuse to use even a very high-quality integrated product if you do not offer trainings due to the absence of such a team in your staff or for other reasons.
Tip: Offer to the client or develop different teaching methods. The process of assimilating information depends on this. Training with the help of high-quality materials and an expert trainer is much more efficient than reading documentation on your own in terms of time / result spent.
Types of trainings
We have created the following levels of training:
- Associate - introductory training telling about the product
- Professional - basic product use
- Expert - advanced usage (there is a troubleshooting section - solving problems yourself)
These levels are enough to cover most customer requests.
Drawing up the structure of the training. Development of materials
How does the creation of training begin? Suppose we already have a request for a specific training on a particular product. In this case, we need to define the following parameters:
- The main goal of the training is why users need this training. The goal may be: “after passing this training, participants will be able to independently install the product, perform basic settings and provide service to end users”. Typically, the goal gets answers to the following questions:
- What will we learn?
- Who will we teach?
- What will the participants be able to do after the training?
It is very important to determine the correct goal, since development will be built on it in the future. - Target audience - training can be provided for different specialties: system administrators, architects or technical support staff
- Methods of providing training : offline, online. Usually, if this work is mostly in the UI, then users are more comfortable with online visits (but the practice is not provided for in the online format, and participants will have to complete their own education). Offline training will be preferable for training, in which users solve many cases, and in different ways (this is especially true for courses where we teach engineers to program applications for our platform Odin Service Automation).
- The duration of the training is usually 16 hours for the Professional level and 24 hours for the Expert. Duration may vary within reasonable limits, but it will be a multiple of days (this is done for the convenience of students and the coach)
When the requirements for training become clear, you can proceed to the formation of the content of the training - to describe which scenarios will be included in the training, and which ones do not need to be included. Here I want to dwell on the word "script." We are not interested in the “feature” of the product in its pure form, but under what scenario it will be used.
Advice: consider typical use cases of your product and rely on them first of all during the creation of the training.
To understand these scenarios, you need to get information about them from customers, the easiest way is through colleagues who are associated with them. So who inside your company will be with your hands and ears about client scenarios ?:
- SME (Subject Matter Expert) A product expert who can be a product manager, evangelist, or any other employee who plays one of the key roles for a product. For example, a product manager in a container virtualization product can tell not only why a particular function is important, but also in what cases clients use it, and what is revolutionary about it.
- Sales engineers are colleagues who sell our solutions. Since they are actively involved in the preparation of requirements and in the sale of the product, they understand what knowledge customers lack (what questions they ask). This information will be most useful for associate training.
- TAM (Technical Account Manager) - technical specialists who “lead” clients and are in closest relations with them during product use. They know how popular the specific product functionality is with customers and whether they have any problems with using it (it can be any claimed function, for example, “customers cannot configure a store in Odin Service Automation”).
Not always employees of other departments have the opportunity / desire to participate in a series of interviews. Here you need to take the initiative, explain exactly how trainings will help them:
- Sales can sell these trainings and receive profit from them.
- Support and TAM are very fond of technically savvy customers - there will be no simple queries, and you can speak the same language
- Developers can be assured that the functionality they have created will be understood and used as intended.
Employee interviewing is not the only source for analyzing incoming information. You can also analyze applications from clients in the support service (usually we are interested in how to questions on which we compile best practices, and problems of clients on which we compose training in troubleshooting skills). And we can talk with clients at the conference, understand the trends of the industry development from thematic news, etc. In general, when selecting materials, we are not limited to any specific sources.
When all these data are collected, we have the opportunity to create an outline (technical task for the developer of the training), according to which we will develop training materials. It is important to note that in outline we indicate not only information on what technical topics will be covered, but also how they will be covered (lecture, laboratory work, group discussion, reading documentation, etc.)
At all stages of training development, we have an
evaluation process . With it, we can eliminate both technical shortcomings (for example, errors in the syntax of the example code), and get useful information on improving the training (for example, it is more profitable to use practical examples in certain topics than theory, etc.). several stages:
- An employee develops a specific training module and sends it to an internal review (to a colleague from his department, to the same training developer)
- Materials are updated taking into account the feedback received and sent to the evaluation expert product (SME)
- The comments received on the module also apply to the training, and you can start developing the next module.
Depending on different circumstances, the process may vary slightly: for example, most often the developer can develop several modules at the same time. That is, to develop new modules, while the previous ones are on review. Or even develop training not for one, but for several specialists at once.
Advice: Understand and promote the importance of creating trainings, for this you need to get allies in a company from several departments (management, engineering, etc.)
I summarize: all these data (target audience, technical information, methods of providing training, the time volume of specific modules, etc.) are extremely important at the initial stage. As you know, the better the architects design the application, the less there will be problems at the design stage. In the same way, it also works to create training materials - drawing up a detailed outline guarantees us the creation of a complete and high-quality training.
When to start creating a training? How to plan time to create?
Based on the accumulated experience, most often the training needs to be synchronized with the release of the product (if we are not talking about the expert level, where information is collected on the accumulated cases, after the product is released). Usually we plan to develop trainings for the year ahead so that they are available immediately after release.
If everything is clear with the release of the training, then how to calculate the approximate work time? We assume that for one hour of training there are 35 hours of development. At first glance it seems that it is very long, but it is not. Having considered the training materials set below, it is easy to see that not much time is spent on creation.
The main components of the training
- Student guide is an integral part of the training. This document contains information about the product (there are similarities with the documentation, but here it is presented in a logical order from the point of view of effective training and is arranged, again, using real-life scenarios), as well as theoretical and practical tasks, for example, creating and migrating a subscription to Odin Service Automaition. This information will be useful for studying by students both during and after the training, the participant will be able to refresh his knowledge with the help of this document (recall the best practices). Depending on the training, the guide may take about 100 - 200 pages.
- PPT - Presentation files. They are needed exclusively for the trainer during the training (all information from them is contained in the Student Guide) Usually diagrams are shown there, the integration of the components that are used to visualize difficult-to-explain materials.
- Instructor guide - A separate document for the coach, which contains information on how to read this training (how much time to spend on specific topics, how to carry out practical exercises, when the breaks, what to focus on). Novice coaches who read this training for the first time highly appreciate this guide (or when this training is rare and it’s necessary to refresh this knowledge)
- Sandbox - each training participant should have their own working infrastructure of the product (in the case of Odin Service Automation, this will be 8 virtual machines, where each will have its own role). It is not always possible to conduct trainings on client installations (although learning to work in one’s environment is still better). Therefore, we have developed a sandboxing system that automatically raises such sandboxes.
- Assessment - 10 technical questions on the product, to which participants respond before and after the training. In this way, you can measure how effective the training was.
- Certification - for each training, questions for certification are compiled (the student needs to answer 20 questions within a certain time). If the participant successfully answers the questions, he receives a certificate for a specific product.
During the training:
There is a lot of information on public speaking (how to make these presentations, how to teach adults), so I will not disclose this topic here. I just want to dwell on those points that I consider important:
- Combine the theoretical and practical part, so students are more involved in the process. We used to work according to the following system: one day of practice, one day of theory, but we came to the conclusion that the combination is much better. For example, our training on virtualization, which was read in the form: two days of theory, two days of practice, has changed, and now during each day we have several switchings between laboratory work and lecture a day.
- Make sure that all participants in the training are comfortable, liberate them (tell a story from your practice, ask them to tell about their experiences, expectations from the training, etc.)
- Involve all students in the process, try to start a discussion. For example, a student asks a question, and you forward it to the audience and ask for their opinion. Usually there are always senior professionals in the audience who love to be experts when asked to do so.
- Use the rule of ten seconds - if you ask a question and no one answers, just silently count to ten, and there will definitely be someone who does not stand up and wants to answer.
- Make sure that only employees from the relevant target audience are included in the training. Example: you should not invite accountants for complex technical training for engineers (there were such cases).
- There are cases when students ask a question that you cannot answer immediately (even being an expert in this field). Such situations are inevitable. Just get a question, promise to clarify it and discuss it on the next day of training or by mail.
- Customers may complain about the specific technical problems they face in their work. In this case, you need to redirect such requests to the account manager, if you can not respond immediately. Referring to an account manager is a special case, but you need to know the right ways to direct a client in a specific situation.
- The size of the recommended audience for offline training: 7 people (if more - it becomes harder to control that everyone learns the material). For online size may be unlimited.
- Be sure to collect feedback after the training, in the future it will help improve materials. We do this with the help of a special form that is given at the last minute of the training (if you send a questionnaire by mail, do not expect that you will receive many answers).
Conclusion
All the information described above concerns only ILT trainings (the instructor leads the training), at the moment we are also introducing electronic (independent) training. If you are interested in this topic, let me know, and I will tell you about it in the next article.
You can find information about our specific trainings and dates
here .
We are also looking for another training developer, if you are interested in such a position, you can read more about it at the
link .
If you have any experience related to training in your company - please share it in the comments.