Position: Software Engineer, Backend
Company: Snap Inc.
Category: Java
Experience required: 3y
English level: intermediate

We’re looking for a Backend Software Engineer to join Snap Inc! Working closely with the Camera Platform team, you will be responsible for solving interesting technical challenges, such as architecting and deploying infrastructure to handle our scale. Working from our Odessa / Kyiv, Ukraine office, you will play a key role in maintaining the software used by millions of people every day.

What you’ll do:
- Architect and implement distributed and highly loaded cloud based applications using contemporary technology stack and best practices.
- Leading features that require design and implementation for scalable and highly available systems.
- Perform code reviews and ensure exceptional code quality.
- Work in a distributed team, evaluate and understand the technical tradeoffs of every decision, communicate across teams and write documentation to ensure appropriate knowledge sharing.
- Iterate quickly without compromising quality.

Minimum qualifications:
- Bachelor’s degree in a technical field such as Computer Science or equivalent experience
- 4 + years of software engineering experience
- Solid Java Core knowledge and skills
- Database management skills and fundamental knowledge
- Understanding of design patterns and best practices

Preferred qualifications:
- Being a Java expert.
- Experience with distributed and data intensive systems
- Experience with service-oriented architecture and Service Mesh.
- Experience with kubernetes and cloud hosting providers (AWS, Google Cloud, Azure)
- Experience with CI/CD and related tools
- Experience with Go programming language will be a plus
- Previous working experience in a distributed team and collaboration with other teams