Scala developer - free course from Otus, training 4 months, Date: December 1, 2023.
Miscellaneous / / December 03, 2023
An in-depth Scala course in which you will gain practical knowledge of popular Scala technologies, functional programming approaches, and become familiar with the most powerful Scala libraries.
The course is designed for Java developers with at least 1 year of experience or for programmers with at least 3 years of experience in another language who are familiar with the syntax of web applications.
12 years of professional development experience. For the last 7 years it's been Scala. Before that I had Java, JavaScript, I once knew PHP. I worked in different countries and in different teams. Geography: Belarus, France, Russia Has experience in design and product development in the B2B and B2C segments. Participated in the design, development and launch of various projects for the Ministry of Education and Science, Skolkovo, Rosatom, and large federal universities. Designed, developed and launched the RUSSIA.STUDY platform Areas of interest: Scala, functional programming, application architecture.
Professional experience: 15 years of programming in C++, C#, JavaScript, Python, Scala, Java. Expert in processing big data using Scala/Spark and Hadoop Cloudera.
Scala syntactic constructs, asynchrony
-Topic 1. Review of language structures. Interfaces, classes, methods
-Topic 2. Review of language structures. Interfaces, classes, methods. Part 2
-Topic 3. Functional constructs of the scala language
-Topic 4.Algebraic data types and pattern matching
-Topic 5. Library of collections
-Topic 6. Library of collections. Part 2
-Topic 7. Asynchronous operations, exception handling, implicit parameters
-Topic 8. Asynchronous operations, exception handling, implicit parameters. Part 2
Advanced Scala concepts, introduction to functional programming concepts
-Topic 9.Higher kind types, implicits, type classes. Part 1
-Topic 10.Higher kind types, implicits, type classes. Part 2
-Topic 11.Overview of the new Scala 3 syntax
-Topic 12. Abstracting contextual information in Scala 3
-Topic 13.Cats core, data types and type classes
Functional programming and effects in Scala. A detailed introduction to ZIO and Cats effect
-Topic 14.Introduction to functional effects
-Topic 15.ZIO effect, constructors, basic operations
-Topic 16.ZIO error model
-Topic 17.ZIO asynchrony and parallelism
-Topic 18.ZIO working with resources
-Topic 19.ZIO Environment and its place in DI
-Topic 20.ZIO ZLayer, ZIO services, testing ZIO programs
-Topic 21.ZIO additional data types
-Topic 22.Cats effects: maintenance, basic data types
-Topic 23.Cats effects: working with resources
-Theme 24.Cats effects: competitiveness
Scala libraries fs2 and http4s. Working with the database
-Topic 25. Functional streams using the example of fs2
-Topic 26.Introduction to http4s + DSL
-Topic 27.http4s middleware + authentication
-Theme 28.http4s streaming + working with JSON
-Topic 29. Access to the database
Akka and CQRS/ES using Akka
-Topic 30.Akka
-Topic 31.Akka actors
-Topic 32.Processing data streams
-Topic 33. Event as the main data type in the system
-Topic 34. Separation of commands and requests
-Topic 35.Query part of CQRS
-Theme 36.ES in the cluster
Project work
-Topic 37. Selection of topic and organization of project work
-Topic 38.Protection of design work