- Company Name
- Rightmove
- Job Title
- Senior Software Engineer I (Backend)
- Job Description
-
Job title: Senior Software Engineer I (Backend)
Role Summary:
Build and maintain scalable, high‑performance backend services for a leading property platform. Lead technical design, implementation and delivery of new features and improvements using Java 17+, Spring Boot, Kafka, and related technologies, while ensuring code quality, performance, and security.
Expectations:
- Own end‑to‑end delivery of backend components, making sound technical decisions.
- Mentor junior engineers, champion best practices and a culture of ownership.
- Balance new feature work with technical debt reduction and performance tuning.
- Collaborate closely with product, design, and QA in an Agile, cross‑functional environment.
- Advise on and experiment with emerging technologies that enhance the platform.
Key Responsibilities:
1. Design, code, test, and deploy microservices and backend features in Java 17+.
2. Implement persistence with Hibernate, SQL, and Couchbase; integrate search with Elasticsearch.
3. Build and manage event streams with Kafka; orchestrate message flows and retries.
4. Use Gradle, Docker, and CI/CD pipelines to automate builds, tests and deployments.
5. Apply TDD and left‑shifting continuous integration practices.
6. Conduct code reviews, enforce coding standards, and maintain technical documentation.
7. Resolve performance bottlenecks, conduct root‑cause analysis, and tune system scalability.
8. Communicate status and architectural trade‑offs to stakeholders and third‑party partners.
9. Lead or participate in capacity planning, disaster‑recovery, and security reviews.
Required Skills:
- Strong proficiency in Java 17+, Spring Boot, and Kafka.
- Experience with Hibernate, SQL, Couchbase, Elasticsearch, and Docker.
- Knowledge of Gradle build system and automated CI/CD pipelines.
- Practiced in TDD, unit and integration testing, and load/performance testing.
- Familiar with Agile methodologies and cross‑functional team dynamics.
- Excellent problem‑solving, communication, and mentoring abilities.
- Ability to evaluate and advocate for new technologies and processes.
Required Education & Certifications:
- Bachelor’s degree in Computer Science, Software Engineering, or equivalent professional experience.
- Relevant professional certifications (e.g., Oracle Java SE, Spring Professional) considered an advantage.