Java Software Engineer
As a Java Software Engineer, you will be part of one of the major innovation centers in the region and participate in creating new ideas for the next-gen video streaming platform.
Our platform is completely developed by our team and is used to deliver video signals via certain protocols to the end-user and today streams more than 2Tbps in peak time. The emphasis is on performance and optimization. We are working on applications based on microservices, monitoring, alerting and test automation by following the latest technologies. Also, you will shape the future experience of the customers through improving user data and content from the server-side. If you want to accomplish something you need to try it, so what are you waiting for? This is the right role for you if you like growing and being part of a challenging team that will give you a chance to explore and contribute to further development.
What you'll have here:
- In-house products: Working on products that we use every day and have millions of users. Some of them are your friends, neighbours, family members. We are our own clients. Our opinions and experiences are directly shaping the products that we design and create.
- People: You will work with experts, community leaders and senior engineers who made these products from scratch. They will reveal to you how the whiteboard idea turns into a worldwide platform.
- Internal learning sessions and innovation challenges: We are an innovation center primarily and you can be part of initiatives, research and focus groups… and don’t miss to take a place in innovation challenges and hackathons
- Tech stack: We are tech agnostic and programming languages are just a tool, but they can make our job easier if we choose the right tool for the job.
- Engineering mindset: We are engineering our solutions from the ground up using open-source tools and customizing them to our needs. We worry about performance, we analyze and observe our system. We are not throwing money at the problem, we actually care if things could be more optimal.
- Career growth: We strongly believe in feedback culture and development plans.
- Community: You want to share your knowledge with the community? We are organizing meetups (DevOps Talk Belgrade) and internal workshops. You are more than welcome to participate. If you are not a great speaker, that is also fine.
Your Responsibilities:
- Design, implement and launch highly reliable and complex video streaming dynamic services from the planning stage through execution to product launch
- Improving customer experience through developing user data and content features
- Proposing and executing technical initiatives with attention to system integration and feasibility
- Building and maintaining new microservices that enables integrations with the core platform
- Implementing modern engineering practices to improve CI/CD processes and deployment
- Maintaining code and writing automated tests to ensure the product is of the highest quality
- Recommend code and design optimizations to improve the scalability of the applications and maximize performances
- Actively mentoring junior engineers and participate in technical discussions
- Collaborating and coordinating work with other teams
- Creating POCs and documenting technical designs and solutions
What we're looking for:
- 8+ years of experience in backend, server-side development
- Proven experience in both core Java and Spring Boot, with knowledge of JDK and native Java libraries.
- Experience with working on highly scalable and performance demanding multithreaded applications
- Proficient in REST and Microservices architecture
- Experience with GC optimization, off-heap memory manipulation, and direct I/O operations
- Experience with Docker/Kubernetes
- Understanding of key networking concepts, such as HTTP, TCP, UDP, multicast, unicast, IP addressing, network routing, DNS, DHCP, VLAN
- Solid understanding of Linux fundamentals and being proficient in using the command line interfaceAbility and desire to work in smalland dynamic teams
- Quick to pick up new technologies and propose innovative solutions
- High proficiency in written and spoken English
- Good verbal communication and good interpersonal skills
- Proactive individual ready to work on challenging projects with "get things done" mindset
- Willing to play with different tools for CI/CD and write microservices from scratch
What will be considered as a bonus:
- Familiarity with OTT video streaming protocols (HLS/CMAF), packaging container formats (MPEG2TS, MP4/CMAF) and Common Encryption DRM standard
Our tech stack:
- Java 17
- Spring Boot
- Microservices
- Kafka
- PostgreSQL
- SonarQube
- k8s
- Docker
We have more than cookies:
- Flexible working environment – we have offices in Belgrade, Kragujevac, Novi Sad and Ljubljana.
- Private healthcare
- Christmas bonus
- Gifts for your special days
- “Healthy” Friday – not always healthy snacks on Fridays
- 25 vacation days
- Growing international team
Here’s the thing:
We come to work every day to face exciting and challenging creative problems. And we come armed with an extremely Agile mindset and a bundle of opportunities for career growth and personal development plans. We come and go relaxed and happy as we know United Cloud has our back, making sure our work and private life are in a perfect balance. Our team is made of smart people, ambitious enough to make the change and brave enough to move boundaries. There is always room for more individuals like that, so send us your CV.