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
Agile methodologies
Linux/Ubuntu
AWS \xe2\x80\x93 S3, SQS, API Gateway, SNS, Lambda, DynamoDB
About the Role:
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.
Our technology stack includes a Serverless microservice architecture that capitalizes on the full breadth of AWS services with code written in Python, Rust and Java, our UI uses the latest versions of Angular, Typescript and NgRx, our CI/CD pipelines leverage AWS, Jenkins, Nexus, and Bazel in addition to our in-house release-management application to build and release 100\'s of software components.
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 at the same time maintaining autonomy on internal design.
Your role includes:
Participating in design discussions with Head of Stream Automation, Product Owners and Solution Architects for adding new or improving existing features
Taking a feature from scoping requirement to actual launch in our cloud platform
Design & document requirements/features/API
Close collaboration with UI & Device driver team who are consumers of our API
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 and involve QA team where an integration/end-to-end test is required
Continuous learning to improve yourself and mentoring Junior Engineers
Actively participate in PR reviews
\xe2\x80\x9cWork is a thing you do, not a place you go\xe2\x80\x9d
We work in agile, low-bureaucracy, high-creativity, cross-functional teams spread across the world. It\xe2\x80\x99s a highly creative work environment where we support your growth with opportunities for career progression, mentoring others and third-party education. The team is built on trust and is relaxed, open and welcoming to all, and there\xe2\x80\x99s fun to be had with regular social events and sports teams.
As part of this role, you will be expected to:
Full SDLC of robust real time multi-threaded backend SaaS application
Collaborate with other teams to develop a Cloud based solution
Able to gather information from stake holders to articulate a poorly stated problem
Be a strong practitioner of Clean code, SOLID principles, DRY, TDD
Cultivate a culture of maintaining high quality code through refactoring
Learn other coding languages as needed
Troubleshoot any production issues if required and include regression testing.
Guide a team of Junior Developers with best coding practices, review PRs, mentor any new hires as and when required
Location
This role allows you to work with \xe2\x80\x9cFull Flexibility\xe2\x80\x9d - for any work where being physically close to fixed equipment is not a requirement, you have the option to work remotely.
Remote working is not the same as working from home, WFH is just one very common option. You can work from wherever gets the creative juices flowing: coffee shops, co-working places, the park, a different country even! Anywhere with Internet access.
Of course, working from an office is an option too especially if you\xe2\x80\x99re craving some ad hoc in-person interaction! Evertz has offices in Canada, England, Scotland, India, Singapore, Hong Kong, Virginia, California, Arizona, Ohio, Hungary, Belgium, Poland and Australia. Many have great spaces for meet-ups as well as permanent or floating desk space.
Working Hours
This role allows you to work asynchronously meaning you can contribute at the times when you do your best work. Some people are early-birds, some are night-owls, maybe Saturday is better than Wednesday? Whilst some overlap for core meetings is needed, you don\xe2\x80\x99t have to do your deep work between 9 and 5.
Salary & Benefits
We offer a competitive salary with annual performance-based bonus and stock option schemes. A pension plan; an employer funded health and medical plan; life insurance plan; long term disability coverage; paid time off; an employee assistance program; and a discount platform. The availability and specifics of these benefits vary by location, details of which will be provided during the hiring process.
When you apply to a job on this site, the personal data contained in your application will be collected by Evertz Microsystems Ltd (\xe2\x80\x9cController\xe2\x80\x9d), which is located at 5292 John Lucas Drive, Burlington, Ontario, Canada and can be contacted by emailing privacy@evertz.com. Controller\xe2\x80\x99s data protection officer is Nadiera Toolsieram, who can be contacted at privacy@evertz.com. Your personal data will be processed for the purposes of managing Controller\xe2\x80\x99s and its\' subsidiaries\' and affiliates\' recruitment related activities, which include setting up and conducting interviews and tests for applicants, evaluating and assessing the results thereto, and as is otherwise needed in the recruitment and hiring processes. Such processing is legally permissible under Art. 6(1)(f) of Regulation (EU) 2016/679 (General Data Protection Regulation) as necessary for the purposes of the legitimate interests pursued by the Controller, which are the solicitation, evaluation, and selection of applicants for employment.
A complete privacy policy can be found at https://evertz.com/contact/privacy/
Your personal data will be retained by Controller as long as Controller determines it is necessary to evaluate your application for employment. Under the GDPR, you have the right to request access to your personal data, to request that your personal data be rectified or erased, and to request that processing of your personal data be restricted. You also have to right to data portability. In addition, you may lodge a complaint with an EU supervisory authority.