Engineer III, Software

Thermo Fisher ScientificBengaluru, KarnatakaOn-siteFull-timeSenior, 5–8 yearsListed 45 minutes ago

Apply now

About this role

Work Schedule
Standard (Mon-Fri)

Environmental Conditions
Office

Job Description

About Team:

We are the Digital Foundation Platform team - the software centre of excellence (CoE) for ThermoFisher Scientific. We are responsible for developing and delivering foundational components and SaaS-based applications and digital lab (Cloud-based) tools, foundational AI and agentic AI solutions, to help scientists do their work more efficiently and with precision, enabling them to make our world healthier, cleaner, and safer. Our elite software products and solutions accelerate scientific discovery and lab productivity. These solutions

- Provide rich content, selection tools, teamwork tools, and scientific apps that allow our customers to focus on innovation and the complexities of their science.

- Build a connected world for our customers where discoveries happen in a thoughtful way — where every device/product is connected, self-aware, and self-healing—thereby enabling efficient workflows and collaborative science.

- Enable our customers to efficiently handle their labs by providing them with insight into workflow processes, asset uptime, and product availability.

We give them the flexibility to access what they need when they need it, allowing them to select and receive products and services across multiple channels. We apply industry-standard methodologies to the design, development, and deployment of best-in-class software products built to demonstrate the power and scalability of the cloud.

Roles & Responsibilities:

Purpose:

The role is for a hands-on developer who is motivated to combine the art of design with the art of programming, thereby actively contributing to the development of new features. This person will be a member of a multi-functional team delivering Connect Platform & Ecosystem, Customer tenancy, Authorization, and Digital product subscriptions and entitlements. The role is expected to make a difference to the product in terms of the design and contribute towards identifying technical risks and alternative solutions to various problems. In addition to that, the role also demands leading, motivating, mentoring, and providing ample guidance to the other team members concerning technical challenges.

Responsibilities:

- Active participation in various Scrum ceremonies such as Story grooming, sprint planning sessions, etc., and working towards identifying technical risks, alternative solutions to various problems, etc.

- Responsible for E2E ownership (Design to support) of multiple significant software modules

- Responsible for owning the integrity of technical work on significant concurrent projects.

- Plans to participate and perform the technical work of an assignment.

- Guides develop activities for other programmers on technical aspects relating to the project.

- Leads the implementation, automated unit and integration testing, code reviews, debugging, and integration of code of utmost complexity across multiple concurrent projects.

- Proactively looks for ways and patterns to continuously automate feature testing with measurable and tangible goals

- Candidate is authentic, open, and leads by example, holding self and others accountable. Encourages, motivates , and collaborates with others

- Anticipates needs and problems while creating solutions. Is willing to ask difficult questions and do things differently. Greets challenge and change as an opportunity

- A highly motivated, fast learner who can self-start and “figure out what needs figuring out”

- Actively participate in the development community of practices in sharing and learning standard methodologies, leading initiatives within the community, and being involved in other organization initiatives

- Strong abilities in both spoken and written communication. Ability to effectively document artifacts and processes and then explain them to others.

Candidate Requirement:

Education: Bachelor's in engineering or master's in computer science with 7+ years of relevant experience

Mandatory Skills, Knowledge, and Experience:

- Minimum 6 years of experience in Web Application Development using Java/J2EE related technologies and/or Python; Expertise in OOAD principles and methodologies

- Extensive experience in Java application development frameworks and technologies: Apache Tomcat, Jetty, Guice, Spring, and JSON/XML/Ajax

- Minimum 2 years of experience in developing Java/JEE-based web applications based on microservices architecture (using Spring Boot, REST APIs)

- Strong in programming subject areas like object-oriented principles, design patterns, data structures, and unit testing (TDD using JUnit), Domain-driven Design (DDD)

- Minimum 2 years of experience in Cloud computing using AWS (Amazon Web Services) , such as S3, DynamoDB, SNS, SES, EC2

- Validated experience of 3 or more years with databases (Postgres/MySQL/Oracle/NoSQL DB), persistence frameworks, and SQL

- Proficient in handling sophisticated data organization and adept at developing multithreaded applications

- Minimum 1-year experience with GitHub, Docker, Kubernetes, CI/CD frameworks (Jenkins)

- 3 years or more of experience using Scrum-based software development methodologies

- Experience, instincts, and enthusiasm around testing, testability , and automation

- Outstanding oral and written communication abilities. Proficiency in accurately recording artefacts and processes and articulating them to others

- Experience with defining and implementing Non-Functional Requirements (NFR – Security, Performance, Cost, etc.)

Nice to Have Skills, Knowledge, and Experience:

- Experience in designing and architecting large-scale and highly available distributed software

- Frontend development experience with JavaScript, Ajax, Bootstrap, HTML5,  CSS,  AngularJS , and an understanding of browser compatibility issues.

- Experience with development on one or more mobile platforms is a plus.

- Experience with quality, code analysis , and Configuration tools like SonarQube, Semmle, Veracode, Netsparker, Ansible, etc.