We're looking for a senior Java developer who can independently build new microservices from scratch — including setting up build tooling and CI/CD — not just extend existing ones. You'll work across legacy code understanding, modern Java development, and relational database performance, using AI tools as a collaborator to accelerate (not replace) your engineering judgment.
What You'll Do
- Design, build, and stand-up new REST microservices end-to-end, including build/CI-CD setup
- Read, debug, and extend unfamiliar and legacy codebases
- Write and troubleshoot SQL, including validating and optimizing Hibernate-generated queries
- Write meaningful automated tests that catch real regressions, not just green checkmarks
- Use AI tools (e.g., ChatGPT, Claude) to accelerate research, documentation, and problem-solving
Required Experience & Skills
Core Stack
- ~10 years of professional software development experience
- Strong Java 8+ (8, 11, 17, 21) — comfortable with modern syntax (var, records, text blocks, switch expressions)
- Spring Framework / Spring Boot
- Hibernate / JPA
- REST Microservices — including creating new services from scratch
- Build tools: Gradle (preferred) or Maven
- CI/CD: Bitbucket (preferred)
- Cloud: AWS (preferred)
Database & Performance
- Strong relational database concepts and SQL proficiency (read, write, and debug queries — including jOOQ)
- Indexing strategies
- Query optimization
- Schema design
- Production troubleshooting
Testing
- JUnit (4 or 5) — test structure, assertions, setup/teardown, mocking, test isolation
- A genuine testing mindset: skepticism that 'it compiles' means 'it works'
- Integration testing strategies, including end-to-end testing and test data management
Engineering & Problem-Solving Fundamentals
- Ability to read and understand unfamiliar or legacy code
- Strong debugging and troubleshooting skills, including reading stack traces
- Dependency management knowledge
- Fast learner with strong research and pattern-recognition skills
- Ability to break large problems into manageable pieces
- Knows when to ask for help
AI-Assisted Development
- No specific AI tool expertise required — but candidates should have genuine experience using AI (e.g., ChatGPT, Claude) as a development collaborator for research, explaining concepts, and drafting documentation, treating it as a partner rather than an oracle.
Nice to Have
- PostgreSQL experience