Java Engineer

Zagreb  |  Varaždin  |  Ljubljana  |  Podgorica  |  Skopje  |  Remote

WHO ARE WE LOOKING FOR

Someone excited by working in the latest technologies and on a range of breakthrough products in the Payment Processing and IoT field.

We are a team of 11 backend-oriented engineers operating on the JVM, where our primary language is Java, but we also use Kotlin. Our tech stack is focused around the Spring Framework and its surrounding ecosystem, which provides a versatile and established foundation for our projects. The use of a relational database in the backend world is almost a given, and RDBMS of our choice is PostgreSQL. However, we also use several other services such as Elasticsearch, Redis, RabbitMQ, and Kafka in our projects.

The team is working on a number of digital services, primarily in the domains of (smart) home appliances and the automotive industry, where we design and implement various APIs and solve interesting integration challenges. Our goal is to produce clean, maintainable, and well-tested code while applying domain-driven design and enterprise integration patterns. The nature of backend-oriented work also puts us in a position to collaborate with many other teams within our organization – from Mobile and Web to DevOps, and naturally the QA.


01

Qualifications & Experience

at least 3 years of experience in backend development using Java or another JVM language (Groovy, Kotlin, Scala…)

good understanding of Spring Framework and its surrounding ecosystem

good understanding of relational databases (preferably PostgreSQL) and data modeling

good understanding of HTTP based APIs

knowledge of software development patterns

strong written and verbal communication skills in English

Bonus points

experience with NoSQL data stores (e.g. Redis, Elasticsearch)

experience with cloud platforms (e.g. AWS, Azure, Google Cloud)

experience with messaging systems (e.g. Kafka, RabbitMQ) and messaging-based architectures

experience with defining CI/CD pipelines

experience with agile methodologies and code reviews


02

Your responsibilities

planning, development, deployment, and maintenance of various software solutions

defining tasks and providing time estimates

writing clean, maintainable code that’s properly tested

rolling out new features and analyzing (and reacting) to the results you learn about from our QA Engineers and user feedback

proactively collaborating with other developers in cross-functional teams as well as with stakeholders and clients

being able to present your solutions in front of clients and/or a group of colleagues

using agile methodologies in development (if you don’t know them yet, we will teach you)

participating in code reviews, pairing, and other forms of knowledge sharing

continually improving your skills and pushing others to go forward with their knowledge

Tools
we use

Docker

We rely on Docker in a variety of ways, from simplifying the setup of a local development environment to packaging and running our applications as containers.

Gradle

The build tool of our choice is Gradle, whose performance ensures developer happiness.

Semaphore and Jenkins

We are practicing Continuous Integration and Semaphore and Jenkins (depending on project/client) are the tools we use.

SonarQube

Code quality matters, and we use Sonarqube to help us keep it in check.

IntelliJ IDEA

Our preferred IDE is IntelliJ IDEA due to its set of unparalleled productivity-boosting features.

GitHub or Bitbucket

We keep our work in GitHub or Bitbucket (depending on project/client) and use pull request flow as our daily routine.

Slack

Company-wide standard communication channel for both work and fun.

Handbook

A go-to place for an assorted collection of practices used within the team and company.

What do we offer?

Learning & development

In our bi-weekly one-on-one talks and quarterly 360 reviews, we discuss what’s good and what could be better.

Versatile projects

Our teams get to work on very interesting projects for renowned brands and clients from a range of industries.

Contributing to open source

Sharing is caring doesn’t only apply to chocolate.

Educational budget

If you’re eager to learn, we’re eager to help. Every employee receives an educational budget.

Paid language courses

Paid language courses help our employees master the English language.

Doing a career switch

We don’t have a sorting hat to tell you where you belong, but we will support your career switch from one job position to another.

Traveling on business

Having clients all over the world means our employees sometimes have to travel to and work from beautiful locations.

Subsidized recreation

Stay in shape with a sponsored fitness membership of your choice.

Sponsored health checks

You know the old saying – the greatest wealth is health.

Working remotely

Office location? Anywhere. It’s all about flexibility.

Free power-ups

Snack on fruit, cookies, and nuts to keep your energy levels up.

Car and bike parking

Don’t let it get caught in the rain. We offer free parking for bicycles and subsidized car parking.

Flexible working hours

Tailor your working hours to fit your schedule.

Fun and games budget

Every team gets a monthly budget to hang out and do fun stuff.

Apply for this position

Resume/CV
Add files
Cover Letter
Add files

Take a look

EXPLORE OUR WORK

Interested in our projects?