Hi there, I'm Sergei

My skills is:
- Java (Basics, Core, Collections, StreamAPI, Unit Tests, Networking, Multithreading, Concurrent, Reflection API, Maven, Gradle)
- Spring Framework (Core, Boot, Web, Security, Data, JDBC Template)
- Design patterns (Builder, Singletone, Factory Method, Proxy, Decorator, Adapter, Command, Iterator, Observer, Chain of Responsibility)
- SQL (MySQL, PostgresSQL)
- ORM (Hibernate)
- Lombok
- Linux
- HTML, CSS, Thymeleaf
- Java Script, PHP
- REST, Jackson
- Docker
- Git (GitHub)
- IntelliJ IDEA
Java Basics
Block 1. Introduction to Java Programming
- 1.1 Introduction to Java Programming - first & second*
- 1.2 Program structure - first & second
- 1.3 Conditional statements and loops - first & second
- 1.4 Data Types in Java: Primitives - first & second
- 1.5 Data Types in Java: Objects (quiz - without uploading projects on GitHub)
- 1.6 Сlass structure - first & second & third
Block 2. InMemory data storage - Arrays
Block 3. Fundamentals of Object-Oriented Programming (OOP)
- 3.1 Access modifiers, inheritance (quiz - without uploading projects on GitHub)
- 3.2 Polymorphism - first & second & third
- 3.3 Abstractions and interfaces - first & second
- 3.4 Exceptions, Stacktrace - first & second
Block 4. InMemory data storage - Collections
- Generics in Collections and Methods (quiz - without uploading projects on GitHub)
- List - first
- Queue - first & second
- HashMap and HashSet - first & second
- Treemap and TreeSet - first & second
Course project "Converter to text graphics" - source codes are available upon request
Java Core
Block 1. Stream API, working with files and building projects
- 1.1 Lambda expressions and functional interfaces - first & second
- 1.2 Stream API. Threads, Recalls, Basic Methods - first & second
- 1.3 I/O streams. Working with files. Serialization - first & second & third*
- 1.4 Assembly of projects. Maven and Gradle - first & second
- 1.5 Working with CSV, XML, JSON files - first & second & third*
Block 2. Testing the program
- 2.1 Code Testing and Unit Tests - first & second*
- 2.2 Mockito. Mock Calls, Mock, Stub - first & second*
Block 3. Networking
- 3.1 Networking basics. OSI Model - first & second
- 3.2 HTTP protocol. Calling remote servers - first & second
Block 4. Block 4. Structure of the JVM
- JVM. Memory organization, garbage collectors, VisualVM - first & second (coming soon)
Design patterns
Block 1. Development patterns
- 1.1 Generating templates. Builder, Singleton, Factory Method, Abstract Factory, Prototype - first & second
- 1.2 Structural templates. Proxy, Decorator, Adapter - first & second
- 1.3. Behavior patterns. Command, Iterator, Observer, Chain of Responsibility - first & second*
Block 2.Magics, DRY, SOLID
- 2.1 Magics, DRY, SOLID - coming soon
- 1. Simple Thread Demo
- 2. Keyword volatile
- 3. Introduction to synchronized and synchronized + lock object
- 4. Example of Thread Pool and Executor
- 5. Pattern "producer - consumer" with BlockingQueue
- 6. Methods wait() and notify()
- 7. Pattern "producer - consumer" with wait() and notify() for threads
- 8. Simple example of Class CountDownLatch
- 9. Simple example of Class ReentrantLock
- 10. Threads Semaphore example
- 11. An example of how to avoid Deadlock
- 12. How to right use the 'interrupt()' method for break thread
- 13. How we can get thread job result and use it with classes Callable & Future
- 1. Simple String demo project Library: Readers and Books with JDBC, PostgreSQL, Apache Tomcat, Maven, Thymeleaf, Bootstrap, HTML, CSS
- 1. First Hibernate demo with Maven - configuration and SELECT from table of database
- 2. Second Hibernate example - INSERT (save) and SELECT (createQuery)