Our product needs a passionate and experienced Java dev to help it grow. Someone who:
- has de ep affection to Java 8 / JVM and distributed, highly-concurrent systems,
- has grounded knowledge and understanding of structures / algorithms,
- has solid experience with modern web technologies (we use Vert.x) and distributed async programming (things like RxJava),
- understanding of modern concepts/techniques like CQRS, Event Sourcing or eventual consistency together with both relational and non-relational data models (NoSQL),
- understands problems and intricacies of highly scalable, cloud based infrastructures (including DevOps, infrastructure as code).
We are not concerned with your education or any other formalism. What we are concerned with is your passion, knowledge and experience.
This is not an entry-level opening. We expect proven professional experience in the field of distributed systems, devops and scalable architectures. We would consider both regular engineers (3-6 years of professional experience) as well as senior level engineers (usually 6+ years of professional experience).
Background
What we create here is basically a top-notch e-commerce system. In short, you can think of it as an Amazon-like webstore. We really mean it, in terms of both the scale and breadth of functionality. Our customer is one of the largest retail companies in the world.
We work mostly with Java 8 in very functional way (streams, immutability, piping of async processing, reactive principles etc). The product is composed of multiple teams (each team is 4-6 people) each working on a separate microservice. Teams are mostly self-managed (we basically do not hire any junior engineers: you will work only with experienced people).
Our office in is Cracow, Poland. We allow remote work from time to time (e.g. 1 day a week, or more when you are more experienced with the project), but the bulk of work has to be done in our office with the rest of the team.
What to expect
We rely heavily on industry best practices and put a lot of emphasis on code quality, scalability, performance, availability, and robustness. This is essential as we start our pilot deployments with requirements for handling thousands of requests every second and the ability to dynamically scale and handle peak traffic transparently for end users.
From day one in our project:
- we peer-review 100% of code,
- we use continuous integration and deployment,
- we constantly test performance of the product to meet requirements,
- we use tools for static code analysis,
- we use and encourage contributing to open source projects.
If this sounds interesting to you, just get in touch and tell us about yourself.
What we expect
We don’t expect you to be an expert in everything above, but you should have a general understanding of each of these areas together with solid expertise in one or two of them. In short, we are focused mainly on T-shape skilled individuals, but we also expect you to be curious and willing to learn.
Fluency in English language (also spoken!) is a must. We work with foreign customers and we strongly believe that seamless communication is one of the most important things in software projects; therefore, at least intermediate level written/spoken English is required.
We expect someone who will bring a sense of unrivaled curiosity and an urge to solve real world problems. You’ll need a warm and fun attitude and a sense of exploration. Above all we value people who put heart into their work and call themselves real craftsmen. People who not only don’t run from unprecedented challenges, but who actively expect problems and are ready to go down the rabbit hole to understand the complexities and find a way to solve it.
Feel invited to visit our website: virtuslab.com/career/#jobopenings & find out more about our offer!