Courses

As a reliable partner, we have already led over 40 technical courses for our clients. We offer IT courses to companies. The course outlines may be adapted to suit your specific needs.

The courses are highly practical, practical exercises consist more than 50% course time! All courses include sensible examples and all courses incorporate experience from various international projects.

UML for Business Analysts

Length: 2 days
Prerequisites: Analytical and abstract thinking, no programming experience needed
Tools: Visual Paradigm, alternatively Enterprise Architect or other upon previous agreement

Outline:

  • UML Behavioral diagrams: Use case, Activity, State Machine, Sequence
  • UML Structural diagrams: Class (only conceptual), Object, Deployment
  • ER diagram, BPMN 2 overview

UML for System Analysts

Length: 2 days
Prerequisites: Analytical and abstract thinking, programming experience
Tools: Visual Paradigm, alternatively Enterprise Architect or other upon previous agreement

Outline:

  • UML Behavioral diagrams: Use case, Activity, State Machine, Sequence, Communication, Timer
  • UML Structural diagrams: Class, Object, Component, Deployment
  • UML Profiles
  • ER diagram, BPMN 2 overview

BPMN 2 for Business Analysts

Length: 2 days
Prerequisites: Analytical and abstract thinking
Tools: Camunda Modeler, Visual Paradigm, Enterprise Architect

Outline:

  • BPMN 2 events, tasks, gateways
  • DMN
  • Simulations

Spring Boot

Length: 3 days
Prerequisites: Java programming experience
Tools: Java (or Kotlin), Maven (or Gradle), Intellij Idea

Outline:

  • Spring basic app, Spring Boot Initializr, components, architecture, testing
  • Beans: Service, Controller, RestController, Repository
  • REST services: HTTP protocol, creating endpoints, handling parameters, responses
  • Data layer: JPA, Hibernate, Spring Data, JdbcTemplate, relations 1:1, 1:N, M:N
  • Transactions: transaction management, @Transactional annotation, propagation, isolation
  • Spring Boot Security: filters, Basic auth
  • RestTemplate, WebClient, Mono, Flux, sync/async support
  • Spring MVC, Thymeleaf template engine

Containerization in Java

Length: 2 days
Prerequisites: Java programming experience
Tools: Intellij Idea, Docker

Outline:

  • Docker container basics, multi-stage builds
  • App containerization: Paketo, Fabric8, JIB
  • Cloud native applications, Quarkus
  • Spring Boot Actuator, health, liveness and readiness probes, Spring Cloud in Kubernetes

Java Basics

Length: 3 days
Prerequisites: Analytical and algorithmic thinking or experience with another programming language
Tool: Intellij Idea

Outline:

  • Java and IDE introduction and installation
  • Data types, operators, control commands
  • Basic OOP principles: classes, objects, encapsulation, inheritance, polymorphism
  • Arrays, String, input/output operations
  • Packages, interfaces, exceptions

Java Advanced

Length: 3 days
Prerequisites: Java Basics
Tool: Intellij Idea

Outline:

  • Generics, Collections, List, Map, Set
  • Nested, inner, local and anonymous classes
  • Lambda expressions, functional programming, Optional
  • Stream, processing collections, filter(), map(), reduce(), Collectors
  • Thread, Runnable, thread states and methods, synchronization issues, async processing
  • Swing GUI, Paths, Path, Files, Charsets, readers, writers, IO streams
  • LocalDate, LocalDateTime, LocalTime, Instant, Duration, formatters, parsers

Java Concurrency

Length: 2 days
Prerequisites: Java Advanced
Tool: Intellij Idea

Outline:

  • Intro to concurrency: Thread, race conditions, deadlocks, live locks, starvation, performance
  • Execution model: execution order, operation ordering, memory visibility, happens-before
  • Immutable classes, isolation, thread-safety
  • Atomic variables, volatile, Lock, Semaphore, Monitor, CyclicBarrier, CountDownLatch, synchronized collections
  • Executor framework, Thread pools, Fork Join Pool, Future
  • Nonblocking frameworks (NIO, NIO2), CompletableFuture, reactive streams

Java Best Practices - Effective Java

Length: 2 days
Prerequisites: Java programming experience
Tool: Intellij Idea

Outline:

  • Software methodologies, Scrum, Kanban, eXtreme Programming (XP), team knowledge transfer
  • Basic design patterns, class and interface design, SOLID
  • Immutability, parallel programing best practices
  • Functional programming best practices
  • Unit tests, Test-Driven Development (TDD), Behavior Driven Development (BDD)
  • Intellij Idea AI Assistant, productivity tips

Java Clean Code

Length: 2 days
Prerequisites: Java programming experience
Tool: Intellij Idea

Outline:

  • Sensible naming of classes and methods
  • Single responsibility principle of classes and methods
  • Open-closed principle
  • Useful comments, code formatting
  • Correct use of exceptions
  • Agile development, unit tests
  • System boundaries
  • Correct parallel programming
  • Refactoring exercise

Git Version Control System

Length: 2 days
Prerequisites: None, familiarity with a command line is welcomed
Tool: Git, Intellij Idea

Outline:

  • Basic git commands: add, status, commit, rm, mv, log, show, reset
  • Working with remotes in Gitlab, merging, rebasing: pull, fetch, push, merge, rebase
  • Git flow, GitHub flow, best practices. Commands: stash, cherry-pick, tag

Interested? Book a call or write an email to us!

Book now