We are looking for a Junior Java Developer to build high-performing, scalable, enterprise-grade software.
You will be part of a talented software team that works on mission-critical applications.
- Works on development, test, maintenance, design and documentation of smaller software components (classes, scripts, packages, demo applications, applications/services).
- Learns programming, computer, data technologies, protocols and standards.
- Learns company's development practices, processes and products/services.
- Learns object oriented programming principles, best practices and design patterns.
- Learns to write a "clean" code - the code that's well designed, efficient, easy to maintain, and adapt to requirements changes.
- Learns to write automated tests (unit, integration and system tests) and to make a code design adapted for testing.
- Performs and recommends re-factoring of smaller software components.
- Entry level position works under guidance and supervision of senior colleagues.
- More experienced software engineer at this position can work independently and is responsible for bigger software components (e.g. multiple classes serving a given purpose, package or a smaller library), collaborates and discusses all phases of component development life cycle with senior colleagues.
- 1+ years of practical experience
- BS/MS degree in Computer Science, Engineering or a related subject preferably from School of Electrical Engineering, Faculty of Organisational Sciences, or Faculty of Mathematics.
- Good communication skills in English
- Experience with Java
- Experience with Relational Databases
- Object Oriented analysis and design using common design patterns.
- Basic understanding of network protocols
- Experience with linux command line interface
Nice to have
- Practical experience with Vert.X or Spring, REST APIs, agile methodologies
- Basic proficiency with writing markup (HTML & CSS)