Senior Software Engineer
Duetto
Summary
Join Duetto, a high-growth global technology company transforming the hotel industry, as a Senior Software Engineer. You will design, develop, and maintain scalable applications using Java, Spring Boot, React, and other technologies. You'll work on mission-critical enterprise applications, implement event-driven architectures, and collaborate with cross-functional teams. This fully remote position offers opportunities for in-person collaboration and focuses on creating a fun and engaging work environment. You will leverage your expertise in Java, Spring, React, and other technologies to build high-quality software solutions for our customers. The role requires strong problem-solving skills, collaboration, and a passion for analytical applications.
Requirements
- BS degree in Computer Science, a related technical field, or commensurate experience
- Proficiency in Java, Spring, React, Typescript, JavaScript, CSS, and Cypress
- Familiarity with GraphQL and its implementation in modern web applications
- Extensive experience with scalable server-side Java and design of mission-critical enterprise applications
- Familiarity with event-driven architecture and application integration patterns
- Strong understanding of data-driven design, data scalability techniques, SQL, and modern NoSQL technologies
- Proven ability to implement Spring Boot-based microservices
- Experience handling the complexity and decomposition of large legacy monolith systems
- Strong problem-solving skills and ability to make architectural decisions
- Excellent collaboration and communication skills
Responsibilities
- Design, develop, and maintain scalable applications using Java, Spring Boot-based microservices, React, Typescript, JavaScript, and CSS, particularly for mission-critical enterprise applications
- Write automated tests to ensure robust and reliable software, utilizing Cypress as the primary method with the flexibility to adapt to other solutions over time
- Implement event-driven architecture and application integration patterns
- Apply data-driven design principles and data scalability techniques, leveraging both SQL and modern NoSQL technologies
- Decompose and manage the complexity of large legacy monolith systems
- Make architectural decisions and recommendations to convert successful prototypes into mature, scalable products
- Enable fast iteration to test new ideas to get the right end-user experience
- Collaborate with cross-functional teams to improve product architecture and engineering practices
- Solve technical problems of large scope and complexity with innovative solutions
- Drive technical expertise growth within the team through mentorship and knowledge sharing
- Actively participate in the analysis of initial issues and goals, conduct research, and determine solution requirements
- Enjoy your work, collaborate effectively with your coworkers, and maintain a great work-life balance
Preferred Qualifications
- Previous experience with Backbone.js and migrating functionality to modern React
- Passion for analytical applications, forecasting, data visualization, and machine learning
- Curiosity about business problems and using modern infrastructure to solve real-world challenges
Benefits
- This is a fully remote position
- With opportunities to collaborate in person