This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
We are looking for a highly skilled and experienced Lead Java Engineer to drive the design, development, and implementation of robust and scalable enterprise applications. The successful candidate will possess exceptional expertise in Java development and a profound understanding of database systems, including both relational (RDBMS) and NoSQL technologies. This role involves technical leadership, architectural contributions, and mentoring junior team members, ensuring the delivery of high-quality, high-performance software solutions.
Job Responsibility:
Lead the architectural design, development, and implementation of mission-critical backend systems and services using Java and its ecosystem (e.g., Spring Boot, Spring Framework)
Serve as a subject matter expert in database technologies, including advanced schema design, query optimization, performance tuning, and data migration strategies for both relational databases (e.g., PostgreSQL, Oracle, MySQL, SQL Server) and NoSQL databases (e.g., MongoDB, Cassandra, Redis)
Provide technical leadership and guidance to a team of Java developers, promoting best practices in coding, software design, and system architecture
Conduct thorough code reviews to ensure code quality, maintainability, scalability, and adherence to established standards
Collaborate closely with product managers, architects, and other engineering teams to translate business requirements into technical specifications and innovative solutions
Identify and resolve complex technical challenges, performance bottlenecks, and production issues across the application stack
Champion continuous integration and continuous delivery (CI/CD) practices to streamline the development and deployment lifecycle
Stay current with emerging technologies, industry trends, and best practices in Java development, database management, and distributed systems
Requirements:
Bachelor's or Master's degree in Computer Science, Software Engineering, or a related technical field
Professional experience in software development, with at least 3 years in a lead or senior Java engineering role
Exceptional proficiency in Java, with extensive experience in core Java, multithreading, and modern Java frameworks like Spring Boot and Spring
Demonstrated deep expertise and hands-on experience with Relational Database Management Systems (RDBMS), including complex SQL queries, stored procedures, database normalization, indexing, and performance optimization
Strong practical experience with NoSQL databases, understanding their various paradigms (document, key-value, columnar, graph), data modeling for NoSQL, and optimizing queries for performance and scalability
Experience designing and implementing RESTful APIs and microservices architectures
Familiarity with cloud platforms (e.g., AWS, Azure, GCP) and containerization technologies (e.g., Docker, Kubernetes)
Solid understanding of software development life cycles (SDLC) and agile methodologies
Excellent problem-solving abilities, strong analytical skills, and clear communication skills (verbal and written)
Nice to have:
Experience with message brokers (e.g., Kafka, RabbitMQ) and event-driven architectures
Knowledge of data warehousing concepts and ETL processes
Experience with build tools such as Maven or Gradle, and version control systems like Git
Exposure to performance testing, security best practices, and enterprise integration patterns
Familiarity with CI/CD tools and practices (e.g., Jenkins, GitLab CI, GitHub Actions)
Experience with distributed caching mechanisms (e.g., Redis, Memcached)