JavaScript Practical courses

Messe Muenchen Draeger Sky Bundesamt für Seefahrt und Hydrographie AUSY IT Akdb Tu kaiserslautern Liebherr

JavaScript/TypeScript/ReactJS trainings à la carte!

Tailor-made JavaScript/TypeScript/ReactJS practice courses for your team

(company exclusive trainings from 3 employees)


JavaScript is one of the dynamic programming languages of the Internet! Create complex applications and your team and enjoy the competitive advantage.

Question for you and your team:

  • Do you work with web technologies on a regular basis?
  • Does your team program front-end or server applications in JavaScript or TypeScript?

If so, we have just the thing for you!

With our customized training courses, you can get everything you need out of JavaScript for your company. Thanks to the modular structure of our training courses, you will receive an individually customized concept for your development team.

The following topics are available:

  • Basics or advanced topics
  • JavaScript and TypeScript language features
  • JavaScript and TypeScript language features
  • Front-end and back-end technologies
  • Best practices
  • Software architecture

We will find the optimal combination for your team's needs. Book your free consultation now! Bring all your questions with you. We'll be happy to take the time to advise you individually.

All courses live

In the Academy or online

Which JavaScript and TypeScript topics can you choose from?

We offer (almost) all modules in either JavaScript or TypeScript. You can decide which variant is right for your team. 

Each topic can be covered in more depth if you wish. Your needs have priority. You decide what your team needs, we create the concept.

If your team only wants an overview, then you can select relatively many topics. However, the team will probably find it relatively difficult to put what they have learned into practice afterwards. Some of the above modules alone will take a day (or even longer) if the content is to be discussed really thoroughly and your team does not already have prior knowledge!

So if you want to work with JavaScript/TypeScript seriously, then in our experience it is better if you choose few topics and we discuss them deeply and thoroughly in the training instead and do enough practical workshops. Indeed, "less is more!" applies here. The best way for us to identify together which topics are target-oriented for your team and your projects is in a consultation.

We don't preach theory, we solve problems! Get the maximum knowledge for your team. Compile the topics according to your previous knowledge and needs, depending on the project. Because individual learning brings the desired success!

JavaScript Basics

These topics form the foundation of JavaScript/TypeScript. Anyone working with one of these languages needs to master the content of these modules, whether you're just developing small interactive features for web pages, complex single-page apps, or servers.

  • JavaScript development environments and runtime environments
  • Data types, operations, equality
  • Functions and control flow
  • Basic data structures in JavaScript: Objects, arrays, maps, sets
  • Working with JSON

Programming with JavaScript

If a team wants to write more complex software, such as larger single-page apps or backends, the topics in this module are particularly interesting. Here, the focus is on how to write robust programs, understand the event loop, and organize source code into modules so that it can be shared with other programmers.

  • Prototypes and inheritance in JavaScript/TypeScript
  • Exception handling with exceptions
  • Modules
  • Concurrency and Event Loop

Effective JavaScript/TypeScript and Clean Code

The modules in this topic do not primarily deal with individual language features of JavaScript/TypeScript, but rather with the question: how do I use the features of these languages to write program code that has as few errors as possible and is easy to understand, modify, and extend. The modules in this section are mainly limited to relatively "local" program components like single functions and classes.

Of course, we also go into how to use the relevant language constructs well in the modules that introduce them; the modules in this section delve further into the techniques and also cover aspects that there is no time for in a typical JavaScript/TypeScript basic or advanced course.

Agile Programming:

Agile techniques help to keep "technical debt" low and the software flexible enough to allow the incorporation of new features throughout the life of the project.


  • Coding-Guidelines in JavaScript/TypeScript
  • Tools for improving code quality
  • Clean Code: Names, comments, functions
  • Testing with Jasmine/Jest and Mocha
  • Refactoring Patterns and Refactoring in JavaScript
  • Test-first development techniques
  • Test Driven Development (TDD)
  • Behavior Driven Development (BDD)
  • Executable Specifications (Cucumber.js)

Object Orientation, Design, and Architecture

These modules cover the full spectrum of object-oriented programming and show how your team can use a variety of techniques and patterns to better structure programs. The basics of object orientation are discussed here, which are independent of any particular programming language, as well as many of the specifics of JavaScript/TypeScript. Some of these modules are TypeScript-specific, since JavaScript, as a dynamically typed language, does not offer the corresponding features

  • Basic concepts of object orientation
  • The JavaScript/TypeScript object model (the prototype chain)
  • Inheritance, abstract classes, and interfaces in TypeScript
  • Practice-relevant software architecture
  • Design patterns in JavaScript/TypeScript
  • Designing, structuring, and implementing large projects:
  • SOLID
  • GRASP
  • Architecture styles, hexagonal architecture
  • JavaScript/TypeScript Objekt model (the Prototype-Chain)

JavaScript/TypeScript for servers

While JavaScript was originally designed only for frontend applications, it has become a popular and powerful language for developing servers and microservice-based backends at least since the development of Node.js. The following topics provide an overview of the Node.js topics needed by many teams. If you have specific use cases or requirements that are not listed below, we can usually address them.

  • Introduction to Node.js
  • Package management with NPM
  • Modules in Node.js
  • Asynchronous programming, the event loop, events, and event emitters.
  • HTTP, web server, express, and express middleware
  • Authentication strategies and options (Passport.js, ...)
  • Test strategies and frameworks for Node.js servers (Jest, Enzyme, ...)
  • Microservices with Node.js
  • The MEAN stack and working with databases
  • Development and productive environments
  • LibUV and Node.js internals
  • Performance optimization of Node.js applications
  • Caching with Redis

Client-side JavaScript/TypeScript with React

More and more applications are using web technologies for their user interface, whether they are web applications, mobile apps or desktop applications. The most commonly used framework for this is React, which provides a robust and efficient view layer that integrates flexibly into your application architecture. With our customized training courses, you can get started with this framework and its extensive ecosystem in a short time or, if you already have experience with React, take your knowledge to the next level.

  • Introduction to HTML and CSS
  • Introduction to React.js
  • JSX
  • React components: functional and class-based
  • Props and State
  • Lifecycle methods
  • React Hooks
  • User input and HTML forms in React
  • Error Handling and Error Boundaries
  • Higher-order components
  • Navigation (React-Router, …)
  • Reactive state management with MobX
  • Centralized state management with Redux
  • Component libraries
  • React Bootstrap
  • MUI (Material UI)
  • React Native for mobile Anwendungen
  • Desktop applications with Electron

Working with legacy code in JavaScript/TypeScript

Every programmer likes to work on modern, well-structured code that is thoroughly documented and tested. Unfortunately, the practice is often different. If you or your team need to maintain a codebase that is characterized by structural problems, insufficient documentation, and no or poor testing, then unfortunately we can't promise you that any of our courses will solve the problem overnight. But in these modules, you will learn many proven techniques that you can use step by step to get your code into a shape that makes it fun to work with again.

  • Safeguarding tests
  • Incremental improvement of code and tests
  • Seams and their special features in JavaScript
  • Refactoring patterns for legacy code

Machine Learning mit JavaScript/TypeScript

Python is the language of choice for many machine learning projects, as there is an almost unmanageable number of libraries and frameworks for it that cover every use case. More information can be found on the Machine Learning page.

However, there are now also very powerful libraries with which you can

  • create Machine Learning based software completely in JavaScript/TypeScript or
  • integrate models trained with a framework like TensorFlow into a JavaScript/TypeScript application

We give only a small selection of possible training topics below. Contact us if you have a need for training in this area!

  • Simple machine learning applications with ml5.js
  • Introduction to TensorFlow.js
  • Using pre-trained models with TensorFlow.js
  • Image processing
  • Speech/command recognition
  • Natural Language Processing
  • Training your own models with TensorFlow.js

Working Effectively as a Team

These modules cover techniques that help make team work more productive and improve the quality of the resulting software.

  • Version Control (Git)
  • Docker
  • Continuous Integration (CI)
  • Workflows: Issue Tracking, Pull/Merge Requests
  • Example: working with a local GitLab instance in Docker
  • Kubernetes
  • Elasticsearch/Kibana (OpenSearch/Dashboards)

Your Trainer

Dr. Matthias Hölzl
Dr. Matthias Hölzl

Expert: Python, C++, Clean Code, Unit Test, Clean Design

Dr. Gilbert Beyer
Dr. Gilbert Beyer

Expert: Interaction Design, Human-Computer Interaction

Allaithy Raed
Allaithy Raed

Expert: Java, Python, Clean Code, Unit Test, Clean Design

Course formats

We offer different course formats: 3-day programs, 4-week intensive programs, and online training videos.

    The 3-day program

    In 3 days (8 hours/day) you will be guided to the next level by an expert: Participate on-site at the Coding Academy Munich or online via Zoom from anywhere in the world. With a practical exam for the certificate.

    3-Day Online Course

    The course takes place online. All you need is a computer with internet access. For some modules it is necessary to install specific Python packages or additional software. We will clarify details when compiling the course content. You will get access to the material on the first day of the course at the latest.

    3-Days on-site at the Coding Academy

    The course takes place in our modern and well-equipped training rooms. We provide each participant with a modern laptop free of charge during the training. Drinks are provided by the Coding Academy. Access to the material will be provided on the first day of the course at the latest.

    3-days on your premises

    If you wish, one of our experts will hold the course at your premises. Then you provide the technology, e.g. computers with the software needed for the course. With this format, there are additional costs for travel and accommodation.

    Online-Training Videos

    The videos pick up the topics from the live trainings and show real programming examples from practice.

    We also offer the courses as online-only training videos. You have access at any time and can access the modules at your pace. This way, you can benefit from our high-quality learning videos at a very affordable price. In our online forum you can discuss with other participants and get help from our Teaching Assistants in case of problems.

    Contact us about the availability of the course you want.

    The 4-week intensive program

    In 4 weeks to the next level: You get 2-3 hours of teaching and video material on Mondays and take part in our live training via Zoom for 2 hours on Fridays. Here, all open questions can be discussed and clarified with the trainer. With a practical exam for the certificate.


    This is a combination of online and offline training, sometimes referred to as "blended learning".

    Schedule

    • We always start on a Monday! You will get high quality learning videos, learning material and sample solutions on the first day. The videos are only available exclusively from us and were recorded by Coding Academy experts.
    • You will study for about 2 hours a day with the videos and study materials. Our courses include many workshops that you work on independently during this time. This engagement with the material and the exercises is essential for success! Because in the online sessions we answer questions about the material learned and discuss the solutions of the workshops, we do not re-explain what was covered in the Learning Video!
    • In the first week we meet online for 2 hours on Wednesday. You can ask questions here, we discuss your solutions to the tasks and explain further topics if necessary or solve additional tasks together.
    • On Friday we will meet again online for 2 hours. Just like Wednesday.
    • From the second week we repeat steps 1, 2 and 4, which means that on Monday you get learning videos and material, you deal with the topics offline and on Friday we meet for 2 hours.
    • We repeat the program for a total of 4 weeks.

    Great extra: Our online forum. All course participants can get help from our teaching assistants at any time.

    Questions and answers about JavaScript training

    Which format is right for me?

    The content that is taught is the same whether you take the course online, on-site, in a 4-week program, or as a training video. We have had very good experiences with all formats.

    Online or on-site training?

    The online and on-site training courses teach the material in a compact, intensive form. You can reserve a block of time that is 100% dedicated to learning, which typically has a positive effect on the learning curve.


    On-site trainings are often a little easier to discuss in a group than online trainings, but online trainings eliminate the time spent traveling to the training and allow you to work in your familiar environment.

    4-week program and training videos?

    With the 4-week program and video-only courses, learning is spread out over a longer period of time. This allows you to flexibly divide your time, learn in a more relaxed way and offers more opportunities to try out the concepts you have learned in practice.


    Another advantage of these formats is that the team does not have to be completely removed from project work for several days. In addition, each participant can complete the video learning units and practice exercises at their own pace and does not have to wait for other participants or complete the assignments under time pressure.

    In the 4-week program, you are responsible for completing the designated learning units and exercises each week to stay on track with the material.

    What is the formal process (order, training, invoice)?

    • If you are interested in training, it is best to contact us so that we can clarify the professional issues.
    • If you would like to complete the training with us, we will be happy to send you a non-binding offer.
    • If you like the offer, accept it (a short confirmation by e-mail is sufficient).
    • If you need an order confirmation, we will be happy to send it to you.
    • Then, together, we will find a date that works well for your team.
    • For online training, we will provide you with the link: MS Teams, BBBServer or Zoom.
    • A few days after the training you will receive an invoice with a payment term of two weeks.
    • In case of active participation in the training, participants will receive their certificates subsequently by e-mail.

    What distinguishes courses at the Coding Academy?

    • Individual: we specifically address you and take into account your previous knowledge, desired topics and focal points

    • Developed by experts according to the Raed Teaching Method®

    • Compact, lively and entertaining

    • Structured and easy to understand

    • Lots of practice: you can immediately apply the knowledge you learn in the course

    • Theory optimized to the essentials

    • Many examples and tasks whose level of difficulty increases linearly

    • Small groups: max. 8 participants in the 3-day course; max. 15 participants in online coaching

    • Highly qualified trainers with up to 30 years of experience in industry and teaching at German colleges and universities

    • For on-site training, we provide participants with modern laptops at no additional cost

    Do the participants of the JavaScript/TypeScript courses receive a certificate?

    Of course, as a participant in a JavaScript course you will receive a certificate. The prerequisite for this is the complete participation in all course units and programming tasks and the successful programming of a small final project. However, after an intensive JavaScript course, this will certainly give you more pleasure than stress.

    NO QUESTION REMAINS UNANSWERED HERE!

    We are very happy to take time for you. Use our contact form for a written contact. Our team will respond quickly and within 24 hours at the latest. In case of technical questions and to clarify the focal points, which are target-oriented for your team, please use the possibility of a non-binding consultation appointment.

    We currently do not offer any JavaScript training courses.