Вы здесь

Java Fullstack Developer

We build modern, event-driven, RESTful APIs and internal web applications supporting data ingestion processes. Technology sneak-peak:

  • Main programming language is Java (Vert.x, RxJava, Vavr) but we embrace polyglot programming with Groovy, Kotlin, Scala, JavaScript and Python in our codebase
  • MongoDB, PostgreSQL and Elasticsearch for persistence
  • TypeScript, React/Redux, NodeJS for web application
  • Amazon Web Services, Kubernetes, Docker, Jenkins
  • React/Redux for web applications

We embrace the DevOps approach taking responsibility for the software we’ve built through its entire lifecycle. Having control over CICD pipeline and cloud infrastructure our code runs on in production the team is empowered to deliver often and deliver fast. Availability, latency, resilience and security are first class citizens discussed within the team on a regular basis and industry leading tooling at our disposal (Splunk, AppDynamics, Tenable, Runscope) are enabling us to have great visibility and data to incrementally improve.

The team operates in agile fashion adopting Scrum methodology and ceremonies.

You will be responsible for

Typically, the role involves the following activities:

  • Writing high quality code, often pairing with others
  • Writing unit/integration/E2E/performance/security/smoke tests in line with testing pyramid
  • Reviewing pull requests and providing quality, actionable feedback
  • Contributing to definition of features, estimating the effort, aiding with prioritization
  • Knowledge of BDD and TDD is essential
  • Automating the build, provisioning and deployment in the cloud
  • Implementing monitoring and alerting 
  • Supporting production systems, resolving incidents and performing root cause analysis (paid after hours support rota)
  • Cooperating with wider technology group in order to resolve issues and deliver cross domain capabilities
  • Leading and/or participating in architecture/design/coding standards/operational best practices discussions
  • Mentoring less experienced engineers
  • Involvement in interviewing candidates for engineering roles
  • Sharing knowledge with engineering community

You will need

Skill and experience relevant for this job:

  • Experience with modern Java
  • Experience with JavaScript frontend development (JS, Typescript, React/Redux, NodeJS)
  • Working experience with Functional Programming paradigm in any language (preferably JVM language)
  • Proficient in at least one SQL or NoSQL database
  • Linux and Docker
  • TDD and BDD
  • Designing and developing systems for high availability and scalability 
  • Knowledge of design patterns and engineering best practices
  • Problem solving, analysis and computational skills 
  • Written and verbal communication skills. You can communicate effectively and efficiently taking into account the nature of your audience
  • Interpersonal skills and relationship building, will be a key part of this role. You instinctively work in a collaborative way and are comfortable working with a wide range of colleagues
  • Eagerness to learn

What would make you stand out

  • Experience with least one more JVM language (Kotlin, Goovy, Scala)
  • Exposure or understanding of CI/CD pipelines and how these feed into a micro services architecture
  • Experience with NoSQL databases
  • AWS or equivalent Cloud platform (EC2, ELB/ALB, Lambda, S3, VPC, Route 53 or comparable solutions in different cloud platform)
  • Experience with infrastructure as code and immutable infrastructure

Ольга Шмиголь