Software Engineer, JAVA
- Research, evaluate, architect and deploy new tools, frameworks, and patterns to build sustainable software solutions for our clients
- Stay on top with latest technologies
- Share knowledge and know-how of software best practices inside and outside the team
- Evaluate tools, frameworks, platforms and processes to determine the best fit for new projects.
- Lead and work as part of a team, as well as independently work toward assigned goals.
Our teams are technology agnostic, always aiming for the latest. We often use a combination of below in our projects:
- Back End: JAVA, sometimes Node.js
- Frameworks: Spring / Spring Boot, Hibernate, MyBatis ORM
- Client-side: ReactJS / Redux, React Native, Angular, Vue.js
- Tools: Atlassian stack, IntelliJ
- CI / CD: Jenkins, TeamCity
- Source Repositories: Bitbucket, GitLab
- Hosted on: AWS, Google Cloud, Azure, OpenShift
- Databases: Relational and/or NoSQL. We use Flyway or Liquibase for schema versioning.
- Other fun stuff: Docker / k8s, ElasticSearch, SOLR, Message brokers
In addition to the right tools, we also encourage teams to follow high personal code/development standards and agile practices (scrum).
We actively do:
- Code reviews
- Automated testing (unit, integration, e2e)
- Quality control: SonarQube, Checkmarx, FindBugs
- A digital products focused company with a variety of challenging engagements with upper mid-market and Fortune organizations
- A chance to work with the top talent professionals and award winning teams across different countries
- Competitive salary and performance based bonuses
- Private health insurance
- Sponsored participation in professional improvement events
- Trips to our other offices and clients' sites
- Great team building events
- Sports activities including gym benefit
- Employee referral program