Description
Your day-to-day will be
- Working collaboratively in an empowered, small, cross-functional team
- Experience working in an agile development environment (e.g. TDD, Agile, pair programming, etc.)
- A passion for code quality proven by detailed testing
- A desire to be hands-on in designing and writing code
- Curiosity and internal motivation to constantly improve
Key qualifications include
- Bachelor’s or Master’s Degree in Computer Science or equivalent professional competency.
- Minimum 3 years of experience building n-tier web applications using Java-based technologies such as Java, Spring, Spring Boot, JPA, React.
- Proficiency in automated testing with frameworks like Mockito, JUnit, and TestCafe.
- Expertise in build tools such as Maven and Gradle.
- Prior experience in building or maintaining CI/CD pipelines using tools like TeamCity or Jenkins.
- Strong understanding of Object-Oriented Design and programming principles.
- Knowledge of enterprise software systems development, including relational databases (JDBC, ORM, data modeling and design), system integration (messaging, REST services), and web UI.
- Additional experience with public cloud providers (e.g. AWS/GCP/Azure) is advantageous.
- Familiarity with agile and fast-paced development environments (TDD, BDD, Agile, pair programming) and exposure to Continuous Delivery and Continuous Integration.
- Track record of mentoring team members.
- Proficient in written communication and documentation skills.
The ideal candidate will share our core values: Collegiality, Integrity, and Rationality.
Collegiality – We value strong teams. We work together as professional equals. We strive to continuously improve our processes and make realistic assumptions to maintain a reasonable work-life balance. We are trusted to manage our own time. We value ideas, not titles. We welcome and consider contrary opinions.
Integrity – We insist on truthful relationships with customers, prospective customers, partners, investors, and each other in everything that we do.
Rationality – We communicate through clear arguments. We decide carefully based on factual evidence. We like calm, systematic, thoughtful solutions. We believe in testing. We never assume that we’re building software the “best” way, and constantly seek to improve our processes