Base course Java in Baku | DevEducation



Java programmers – have one of the best-paid jobs in the world. They work on video games, software and Android apps. That's why demand for these specialists is always growing. Start learning Java now!
City: Baku
Start of classes: set closed
experience from the very first week
85% for all students, 40$ month
Average salary
developers — 1300 $
immediately after completion of the course
4 months
5 lessons per week, 4 hours a day

This profession is for those, who:

You have an analytical mind, can see yourself working in IT and want to master an in-demand profession
You have an analytical mind, can see yourself working in IT and want to master an in-demand profession
You have basic programming skills, are a team player and want to build a strong portfolio
You have basic programming skills, are a team player and want to build a strong portfolio
You're keen on development, seeking professional growth and want to join a large IT company
You're keen on development, seeking professional growth and want to join a large IT company

How can you start your career in IT?

Fill out the form
Complete the admission test
Get a grant covering 85% of the cost of the course
Start learning at only 15% of the price
Take an interview at the company
Apply and get a grant covering 85% of the cost!

Course program

  • Introduction to Java
  • Java virtual machine (JVM)
  • Language syntax
  • Comments
  • Keywords in Java
  • Data types: primitive / reference
  • Principle of choosing primitive data types
  • Variables and constants
  • Declaration and initialization of variables (fields)
  • Scope and lifetime of variables
  • Operations: arithmetic, assignment, relationships and logical
  • Converting and casting numeric types
  • Operations' priority
  • Conditional operator and its types
  • Ternary operator
  • "switch" statement
  • Loops: for, while, do while
  • Infinite loops
  • Interruption of control flow, tags
  • Declaration and initialization of arrays
  • One-dimensional, multidimensional arrays
  • Iterate over array elements (foreach loop)
  • Arrays and assignments
  • Search in arrays
  • Arrays class: filling, comparing and sorting elements
  • Methods: arguments of variable length
  • Char
  • String class. Immutable Objects
  • Storing strings in memory (String Pool)
  • The basic operations of the String class (creation, concatenation, comparison, searching for characters and substrings in strings, etc.)
  • Converting primitive data types
  • StringBuffer vs StringBuilder classes
  • Localization and encoding (UTF-8 and other)
  • Objects and classes. Objects. Definition. Condition. Behavior.
  • The object model. Key points: abstraction, encapsulation, inheritance, polymorphism.
  • Packages. Packages' nesting
  • Fields and methods (definition, declaration syntax)
  • Access modifiers
  • Classes' fields: initialization explicit and default, final specifier (constants)
  • Methods: parameters and links, set of methods, methods' overloading, methods' overriding
  • Static fields, methods, initialization blocks
  • Access to fields and methods
  • Constructors: default constructors, calling one constructor from another
  • Usage of "this"
  • The importance of testing
  • Preparation for testing
  • Test creating
  • JUnit
  • TestNG
  • Mocking (PowerMock, Mockito)
  • TDD
  • Fibonacci + testing. Cycle Replacement.
  • Inheritance and polymorphism as a tool for creating software. Superclass and subclasses, generalization relation, inheritance in Java. A call to superclass constructors, the order of calls. Keyword super
  • Overriding methods, main rules. Inheritance for static fields and class methods. Abstract classes and methods - concept, call of constructors, implementation of methods in child classes
  • Interfaces. "Multiple" inheritance. Definition and implementation of interfaces. Interface Extension
  • Inner classes
  • Polymorphism. Inheritance hierarchy
  • Converting and casting. Using instanceof. Prohibition of inheritance: terminal (final) methods and classes.
  • Import classes, static methods and fields
  • Composition
  • The global superclass Object, its methods
  • Implementation rules of equals(), hashCode(), toString() methods
  • ENUM. values(), valueOf(), name(), ordinal() methods.
  • Heep, Stack.
  • Storage of different types of data (primitives, arrays, reference objects and strings)
  • Garbage collection and disposal of objects
  • Class Collections: search and sorting of elements, adding.
  • Abstract data types (data structures)
  • List
  • Set
  • Map
  • Iterating over Collections, forEach loop
  • Comparators
  • Non-generic Vs Generic Collection in Java. Difference
  • Lambda expressions
  • Stream API
  • Using Generics
  • Repository
  • Basic Git commands
  • Git flow
  • Java exception class hierarchy
  • Exception handling
  • The concept of exception and exceptional case
  • Checked/Unchecked exceptions
  • Exception generation and throw statement
  • Controlled exception declarations, throws keyword
  • Throws in overridden methods
  • Exception catching and handling
  • Regeneration of exceptions
  • Finally block: releasing resources
  • StackTrace
  • Ways to find an error
  • Objects presentation in text form
  • Class hierarchy of streaming output/input
  • Output/input streams, workflow, output/input stream hierarchy
  • FilterOutputStream and FilterInputStream
  • Byte streams
  • Character streams
  • Class File
  • Serialization and Deserialization in Java. Concept and purpose
  • Try with resources
  • Thread and process
  • JVM realisation of execute multiple threads on single core
  • Runnable and Callable classes
  • Run and stop a thread. Thread management
  • Java thread visibility. Stack
  • Synchronized keyword. Mutex object and monitor
  • Deadlock
  • Volatile keyword
  • Multithreaded application example
  • Executor
  • Concurrent collections
  • Happens-before
  • JAR-file structure
  • Compiling and building of JAR-files
  • Execution of JAR-file
  • Java execution parameters
  • The main point of building project
  • Lifecycle of building a project
  • Dependencies
  • Maven, Gradle
  • Regular expression in Java
  • Purpose of logging
  • Logging levels
  • Configuration of log
  • ACID
  • SQL
  • NoSQL
  • JDBC
  • SDK for NoSQL
  • CAP-theorem
  • The concept of client and server
  • Client-server interaction
  • Networks
  • OSI levels
  • Socket
  • REST
  • WebSocket
  • CORS
  • Servlet.
  • Servlet containers (Tomcat)
  • Filters
  • JBoss, GlassFish etc.
  • MVC
  • MVP
  • RetentionPolicy
  • ElementType
  • Annotations inheritance
  • Access to the class fields and methods
  • How to simplify and speed up production process
  • TeamCity, Jenkins
  • Problem solving with patterns
  • GRASP. Generative patterns
  • GRASP. Structural patterns
  • GRASP. Behavioral patterns
  • HTML
  • CSS
  • JS
  • Hibernate
  • History
  • IoC/DI
  • Beans lifecycle
  • Config
  • Spring Wev MVC
  • Spring Boot
  • Spring Data JPA


Artyom Kovalevsky
Junior Java-developer
Hard skills
  • Java Core, Java FX
  • Stream API, DateTime API, Lambdas
  • Maven/Gradle
  • DBC, SQL, Hibernate (ORM)
  • Networking, REST (HTTP, WS), Nginx
  • Unit Testing
  • Concurrency, IO vs NIO, Servlet (Tomcat/Jetty)
  • Spring base, Unix (Linux, Ubuntu)
  • GIT, JIRA, CI/CD (TeamCity)
Soft skills
  • Flexibility and creativity
  • Team player
  • Capable of handling difficult tasks
  • Time management
  • High emotional intelligence
Java programmers have one of the best-paid jobs in the world. They work on video games, software and Android apps. That's why demand for these specialists is always growing. Start learning Java now!
For a very low price, DevEducation gives you the opportunity to:
Progress from a beginner to a sought-after Java developer
Build an outstanding portfolio
Improve your qualifications and market value
Take the first step towards joining an in-demand profession — apply now!

1 200$

The average salary for Java developers throughout of Azerbaijan

What do graduates say about us?

  • Aghasalim İsmailov
    Aghasalim İsmailov
  • Sevil Zeynalova
    Sevil Zeynalova
  • Samir Tagizade
    Samir Tagizade

Frequently asked questions

The courses will be conducted in either Russian, Ukrainian or Azerbaijani depending on the country of your training. All courses use English-language IT terminology. *Russian language understanding is required for course participation regardless of your location.
A genuine Certificate of Completion confirming skills that you learned will be given at the end of the course.
Each student will get an invitation for a job interview with one of the DevEducation’s partners upon the course completion.
The classes are usually conducted in the morning. However, you can request a detailed schedule of the chosen course from an administrator in your city.
Courses are conducted by field experts, who have over 5 years of experience, and are currently employed by our partners’ IT companies.
Grant recipients shall not be legally or financially liable to the IT college. You have the right to refuse the grant or use it for the next course completion.
Your employment with a partner IT company is guaranteed, if you pass the interview successfully. However, we can't provide a 100% guarantee of your employment, since many factors depend solely on the student. If you don't miss any of your classes and do all your homework, your employment chances are very high. While every student is different, 87% of our graduates got a job right after graduation - we are proud of that.
We strongly recommend attending all lectures in order to get the best out of the course content. However, if you happen to miss a lecture or optional course, be sure to do the homework associated with the lecture as well as all other lecture tasks A maximum of 20 grants is allocated for each course. We expect you to attend all classes scheduled 5 days a week and do all your assigned tasks. We may recommend a student to opt out of training if he/she misses multiple classes without a serious reason. The majority of our students are mature, self-sufficient people that are determined to do their best. Attendance and progress are your personal responsibility in the first place. Your success is up to you - if you pay proper attention to the course, it will be quite easy for you to get a good job and achieve your goals.
The course is built around finding solutions and answers, including answers to self-learning tasks. That’s the reason why failure to do assigned work will result in the loss of your grant and automatic expulsion from our courses. We want our students to succeed. If we see the effort and desire to truly understand the material, we want to work with you. If that drive just isn’t there, this will be a different conversation.
The course curriculum can be found at Select the courses section and open the desired course.
We’ve arranged an “Open Door Day” event particularly for this purpose. It is also possible to visit us on any other day by prior agreement with the head of the college. You can also submit a request on our website and register for one of the open events conducted on business days.
Visit, select the desired course and check the “Perfect Student Profile.” There you can get an idea of knowledge required to receive a grant.
Upon the QA/AT course completion, you will be able to develop a career in software manual testing or software automated testing. You will be able to understand all basic tests, documentation creation, automation workflows, and all the steps of the software lifecycle. Your level of skills will enable you to implement all this across real-life projects; Upon the FrontEnd course completion, you will be able to work as a programmer in the web development field. You will also be able to code a site and create desktop apps; Upon the Mobile course (Xamarin or React Native) completion, you will be able to become a programmer in the mobile development field.
Testers are people that check sites and applications for errors. Hundreds of new web resources appear every day making a professional tester an absolutely irreplaceable link in the chain of high-quality site or app development. This career will be in high demand for a while. Automated testing is also becoming a fast-growing career. QA/AT course completion in DevEducation college will provide you an opportunity to work in either of those two fields.
Compensation varies from person to person, job to job and is based on the results of your job interview. Your salary may also depend on the city of your employment. Usually, our graduates are offered an average junior wage in the region. How you approach our courses and your dedication to studying will assure that you have what it takes to be a qualified developer in these fields, and will consequently provide the most beneficial impact on your future compensation.
The Basic course duration is 4 months, and the course is based on one of the programming languages. Language selection will depend upon the needs of IT companies in the region where you are trained. In most cases, this will be Java or C#. The Basic course includes the essential material required for working on real-life projects. Upon the Basic course completion, a student may choose a specialization: FrontEnd, Mobile Xamarin or Mobile React Native, Java Advance, C# Advance. You can become a professional in any of these fields in 1.5-2 months.
You can get enrolled at The Base Java/C# course or Testing course in our college. You need to have basic knowledge of the following: Programming basics; Advanced computer skills; A desire to study, learn something new and achieve your goals.
You can find a list of our partners in the Our Partners section at They are various companies in different cities, and their number grows steadily. Major partners: WizardsDev Field of activity: development of business software, analytics, data security; xCritical Field of activity: development of FinTech services, online trading systems, Web and mobile apps; Global Cloud Team Field of activity: development of outstaffing software.
Until September 2021, we worked offline only. Now you can study online as well. Our partner companies need hundreds of qualified IT specialists. So we teach only the relevant skills you need for future work. After training, the best students undergo an internship and get employed. To keep the high quality of education online, we've created a virtual lab to work on projects. Now you can train and get a job from anywhere in the world.
Our target audience is ambitious, highly motivated people at the age of 18-27, but there are always exceptions. It depends a lot on your mandatory pre-enrollment interview, where you show your abilities. 33 is the maximum age for enrollment for any course in our college. We have accepted 16-year-olds, however, in this case, we won't be able to provide an opportunity for full-time employment.
If you received a grant, you will be offered a contract indicating the course name and the number of learning hours. Upon the course completion, you will receive a Completion Certificate.
We offer a 5/2 curriculum and quite a significant amount of homework. You will have to decide whether or not you will be able to work and study simultaneously. 50% of our students study while being employed. However, we warn everyone it can be tough to do so.
DevEducation is a non-commercial project, and we strive to provide every student who is eager to study with an educational grant. A student's desire to receive a grant means that they are really enthusiastic about the IT industry. We support people that are eager to become real professionals. The course price will be significantly low for you if you receive a grant. This is just a tool to filter out careless students and keep the committed ones. We do not gain any profit for selling the courses. Our key benefit is to provide highly-qualified professionals for IT companies. The qualification of our professionals is much higher than that of those recruited via job sites and HR services. We provide the highest-quality training in the IT education market in terms of further employment. The content of our learning programs is initially based on real-life work statements of modern IT companies. We know for sure what skills and knowledge are required to get a job. We have sponsorship agreements with our partner companies allocating money for educational grants. This makes our courses accessible to any enthusiastic student. Despite the fact that we totally comply with the needs of the business, we still stand with our students in terms of the learning process.
You have to be at least a pre-intermediate level to receive a grant and to be enrolled for the course. If your English language skills are not as high as expected, but you have perfectly completed all other tasks during the interview, you can still apply for a grant and be enrolled on the course.
This is a standard time for any business education. People may be quite exhausted after 8-9 hours of working. It is not productive to have students go through such an extensive curriculum in the evening. Besides, we learn from real-life projects, so by providing money for grants, companies take a serious risk in case our students fail.
Fill out the form and learn more about how to build a career in IT with DevEducation!