Point your AI agent at freehire and let it find you a job.

Get the CLI →

Eurofins

NewBe an early applicant

Principal Software Engineer

Posted Updated
Discussion
  • Own and drive hands-on design and development of complex, enterprise-scale Java applications.
  • Lead technical direction for modules or subsystems while remaining actively involved in implementation.
  • Support modernization initiatives, including migration from legacy or monolithic systems to modern architectures.
  • Act as a technical mentor and role model for engineers across teams.
  • Ensure solutions meet performance, scalability, security, and maintainability expectations.
  • Collaborate closely with product, QA, DevOps, and architecture teams to deliver end-to-end solutions.


Specific Assignments:

Software Engineering & Development

  • Design, develop, and maintain backend and full-stack features using Java, Spring Boot, REST APIs, and relational databases.
  • Exposure in Eclipse RCP is an advantage.
  • Support modernization of legacy Java applications to modern, cloud-ready architectures.
  • Build modular services and support microservices-based designs where applicable.
  • Design and integrate RESTful APIs, backend services, and data models.
  • Support UI teams building Angular or React frontends by providing robust backend APIs.
  • Implement high-performance data processing and integration logic for analytical workflows.

Design

  • Apply object-oriented design principles and design patterns (SOLID, OOP, layered / hexagonal architecture).
  • Contribute to application and solution architecture discussions.
  • Perform technical trade-off analysis and guide design decisions.
  • Ensure clean, extensible, and maintainable codebases.

Quality, Performance & Reliability

  • Ensure high code quality through unit testing, mocking frameworks, and static code analysis.
  • Perform performance profiling, memory analysis, and JVM tuning to resolve bottlenecks.
  • Support performance tuning and stability improvements in production environments.
  • Work closely with QA teams to ensure strong test coverage and release quality.

Collaboration & Agile Delivery

  • Work within Agile / Scrum teams, contributing to sprint planning, reviews, and retrospectives.
  • Support end-to-end product development, including development, deployment, and maintenance.
  • Collaborate with global teams and stakeholders across regions.
  • Provide technical guidance and mentoring to engineers.

Skills Required

Core Technical Skills

  • Strong hands-on experience with:
  • Java (8+)
  • Spring / Spring Boot
  • RESTful API design
  • SQL
  • Eclipse RCP
  • Angular
  • React
  • Mongo DB
  • AKS, etc

Additional Technical Skills

  • Experience with microservices architecture, service communication, and integration patterns.
  • Working knowledge of Hibernate / JPA and transaction management.
  • Exposure to event-driven or message-based systems is a plus.
  • Exposure in Eclipse RCP is an advantage.
  • Exposure to Azure cloud-native development is an advantage.
  • Integration - Experience with API-based, file-based, and message-based integrations (e.g., Azure Service Bus or similar).
  • Domain Exposure - Experience with shipping/logistics workflows or scientific data processing (e.g., Genomics, laboratory systems) is a plus.
  • DevOps - Familiarity with Azure DevOps, CI/CD pipelines, Docker, and cloud platforms.
  • Understanding of build and dependency management tools such as Maven or Gradle.
  • Experience with software design patterns, layered architectures, and performance optimization.
  • Proficiency in object-oriented design and clean coding practices.
  • Strong experience with unit testing and mocking frameworks (JUnit, Mockito, etc.).
  • Good hands-on knowledge of performance profiling and memory analysis.

Methodologies & Practices

  • The following practices are expected to be actively followed:
  • Scaled Agile, Lean, Kanban, and Zero-Defect Development
  • Daily stand-ups and close collaboration with development teams
  • Continuous Integration and Continuous Deployment (CI/CD)
  • Automated builds, deployments, and testing
  • Automated unit and functional testing
  • Adherence to development guidelines and coding standards
  • SonarQube-based static code analysis

Tech Stack

  • Frontend : Angular, React
  • Backend: Java, Spring Boot, REST APIs
  • Databases: SQL Server, MongoDB
  • Integration: REST, messaging, file-based integrations
  • DevOps & Cloud : Azure DevOps, CI/CD pipelines, Docker, Azure
  • Quality & Code Analysis: JUnit, Mockito, SonarQube

  • MCA or Bachelor’s degree in Engineering, Computer Science, or equivalent.
  • 8+ years of hands-on experience in Java-based software development on global or enterprise projects.
  • Proven experience in product development environments.
  • Strong understanding of the Product Development Lifecycle and Lean Agile / Scrum methodologies.
  • Excellent verbal and written communication skills.
  • Strong analytical and problem-solving abilities.
  • Strong learning mindset and continuous improvement orientation.

Skills

What Principal Software Engineering jobs ask for — and how much of it you have →
Apply

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available