Who We Are
Solera is a global leader in data and software services that strives to transform every touchpoint of the vehicle lifecycle into a connected digital experience. In addition, we provide products and services to protect life's other most important assets: our homes and digital identities. Today, Solera processes over 300 million digital transactions annually for approximately 235,000 partners and customers in more than 90 countries. Our 6,500 team members foster an uncommon, innovative culture and are dedicated to successfully bringing the future to bear today through cognitive answers, insights, algorithms and automation. For more information, please visitsolera.com.
The Role
A Principal Software Engineer's roles includeproviding technical leadership, defining software architecture, mentoring other engineers, and overseeing projects from conception to completion. They also ensure code quality, evaluate new technologies, and collaborate with cross-functional teams to align technical solutions with business goals.
What You'll Do
- Deep dive on large-scale SaaS products and be prepared to assist architecture with setting the vision, organizing and evolving the code-base for the entire product
- Provide technical leadership and strategic guidance across teams on design, development, and implementation.
- Integrate and leverage AI tools like Copilot and automation platforms to enhance product capabilities and engineering efficiency.
- Champion best practices in Java, Spring Boot, and microservices-based architecture.
- Drive excellence in ORM frameworks (e.g., Hibernate, JPA) and deep expertise in RDBMS systems, especially PostgreSQL.
- Guide build and deployment processes using Gradle, CI/CD pipelines, and automated quality checks.
- Collaborate with stakeholders to ensure alignment between technical strategy and product goals.
- Conduct architectural reviews, lead PoCs, and evaluate emerging technologies to meet evolving business needs.
- Mentor and coach engineers, fostering continuous improvement and skill development across the team.
- Contribute to technical decision-making, risk mitigation, and delivery assurance across multiple projects.
Key Job Functions/Requirements
- Hands-on experience with construction of complex engineering solutions and knowledge of software development methodologies with 12+ years of experience
- Architect and implement end-to-end software solutions with a focus on scalability, resilience, and performance.
- Design and implement event-driven and queue-based systems using technologies like Kafka or RabbitMQ.
- Apply solid object-oriented principles and software design patterns to build clean, maintainable, and extensible systems.
- Languages & Frameworks: Java, Spring Boot, Spring Cloud, JPA, Hibernate
- Architecture: Microservices, REST, Domain-driven design, Event-driven architecture
- AI & Automation: Familiarity with AI-driven development tools, intelligent code assistance, and workflow automation
- Queues & Messaging: Kafka, RabbitMQ, or similar message brokers
- Databases: PostgreSQL, advanced SQL, data modelling, query tuning
- Build & Deployment: Gradle, Git, Docker, Kubernetes
- Best Practices: TDD, CI/CD, design patterns, code quality, security, observability
- Cloud & DevOps: Cloud-native development (AWS), containerization, monitoring tools
- Experience withWeb Services and Serialization (XML, JSON, SOAP, REST)
- General foundation in enterprise computing including networking, infrastructure, virtualization, web tools and technologies, databases
- Object oriented design principles (SOLID), design patterns, enterprise integration patterns, Microservice architecture
- Familiarity with non-functional software qualities (resilience, maintainability, etc), and experience implementing related design patterns and analysing trade-offs
- LLM Skills: Experience with using LLMs using embeddings, RAG, VectorDB and prompt engineering building production grade applications.
Technical leadership and expertise
Architectural design:Lead the architectural design of complex, scalable, and high-performance software systems.
Technical direction:Define the technical vision and roadmap for software development, ensuring alignment with business objectives.
Problem-solving:Solve complex technical challenges and optimize existing applications.
Technology evaluation:Research, evaluate, and recommend new technologies and tools.
Code quality:Ensure adherence to coding standards, conduct code reviews, and uphold best practices.