You will be joining a geographically distributed team as a Senior Java Developer to develop core Java-based microservices that run in AWS backing our evertz.io Stream cloud-based service. The team is often presented with exciting challenges to overcome by collaborating with other teams and at the same time maintaining autonomy in internal design.
Skills and Experience you will bring:
At least 8 years of programming experience
At least 4 years of Java 8 or higher experience
Build tools (Gradle)
JUnit & Mockito
CI/CD - GIT, Jenkins
Test Driven Development
At least 1 year of experience in the following:
Microservices - architecture and principles
Common API formats (REST, OpenAPI, JSON, WebSockets, JSON RPC, Proto)
Ability to speak & write in English fluently
Additional skills and experience that will be useful:
Multi-threading, concurrent and distributed design
Behaviour Driven Development
AWS – S3, SQS, API Gateway, SNS, Lambda, DynamoDB
Your role includes:
Participating in design discussions with the Head of Stream Automation, Product Owners and Solution Architects for adding new or improving existing features
Taking a feature from the scoping requirement to the actual launch in our cloud platform
Design & document requirements/features/API
Collaborate with other teams to develop a Cloud-based solution
Develop high-quality, easily understandable, fully unit-tested software with JavaDoc satisfying Definition of Done
Understand and use Shift left strategy/push-down Test Pyramid when testing the developed feature
Engage with the QA team where an integration/end-to-end test is required and include regression testing for any production issues found when investigating
Continuous learning to improve yourself and mentoring Junior Engineers
Actively participate in PR reviews
Able to gather information from stakeholders to articulate a poorly stated problem
Be a strong practitioner of Clean code, SOLID principles, DRY, and TDD, maintaining high-quality code through refactoring
Develop a robust real-time multi-threaded backend SaaS application and learn other coding languages as needed
Screening with recruiter (30min)
2 x Technical interviews with 2 Hiring Managers (about 90min)
2 x System Design interviews with 2 Senior Developers (about 90min) -> Senior level only
About the position / about the project
The evertz.io Engineering Team builds next-generation systems for content management and distribution in the Media and Entertainment industry. Disney, NBCUniversal, Discovery, BBC, and many other content producers and publishers use our products and services to make the most of their file-based and live content for the least effort.
We work with high-quality video in real-time and non-real-time scenarios across a wide range of cutting-edge tech. Specializations within the group span from low-level video manipulation and analysis, through back-end management and orchestration services, to web delivered UIs. Working in parallel with these teams is the Scientific Computing Group who work in computer vision, data science and machine learning, taking experiments in Jupyter notebooks through to deployment in production. This makes for a challenging and rewarding engineering experience of continual learning and plenty of opportunity to explore different parts of the stack.
We work in agile, low-bureaucracy, cross-functional teams spread across the world. It’s a highly creative work environment where the team is built on trust and is relaxed, open and welcoming to all.
Evertz has engineering offices in Canada, England, Scotland, India, and now it's time for Poland!