Rakuten is seeking a highly skilled Staff Engineer specializing in Java to design and implement scalable, high-performance systems while championing technical excellence. This role involves collaborating with cross-functional teams to architect and deliver robust solutions using modern technologies. This is a hands-on position requiring in-depth knowledge of Java, system design, and modern software development practices.
Responsibilities:
- Architect and Design Systems: Lead the design and architecture of scalable, distributed, and high-performance systems using Java, Spring Boot, and Microservices.
- Hands-on Development: Write clean, efficient, and maintainable code in Java, ensuring adherence to best practices.
- System Design: Create detailed system designs, including architecture diagrams and data flow, to solve complex problems.
- Microservices Development: Design and implement microservices-based architectures for scalability and fault tolerance.
- Big Data Integration: Implement data pipelines and processing frameworks using Big Data technologies.
- Database Expertise: Design and optimize database schemas and queries for MongoDB and other databases.
- Technical Leadership: Mentor engineering teams, ensuring adherence to design principles and coding standards.
- Collaboration: Work closely with product managers and stakeholders.
- Performance Optimization: Identify and resolve application and system performance issues.
- Innovation: Stay current with the latest technology trends.
Requirements:
- 9 to 14 years of Java development experience, with a focus on system design and architecture.
- Deep understanding of Java, including multithreading, concurrency, and performance optimization.
- Extensive experience with Spring Boot.
- Strong knowledge of microservices design patterns and RESTful APIs.
- Expertise in designing scalable, distributed systems.
- Hands-on experience with Big Data tools and frameworks (e.g., Hadoop, Spark, Kafka).
- Proficiency in MongoDB, including schema design.
- Strong understanding of design principles (SOLID, DRY).
- Ability to write production-ready code.
- Excellent problem-solving and communication skills.
- Experience with cloud platforms (e.g., AWS, Azure, GCP) and containerization technologies (e.g., Docker, Kubernetes).
- Familiarity with CI/CD pipelines and DevOps practices.
- Knowledge of event-driven architectures and messaging systems (e.g., RabbitMQ, Kafka).
- Experience with monitoring and logging tools (e.g., Prometheus, Grafana, ELK stack).