Work Schedule
Standard (Mon-Fri)Environmental Conditions
OfficeJob Description
Job Title: Software Engineer III
Job Location: Bangalore
About Team:
Digital Engineering is Thermo Fisher’s “Software Engineering” center of excellence. We build cloud computing services, products and Platforms that the scientific community demands. Using the emerging technologies with the potential to significantly change lab workflows and facilitate access to powerful data analysis techniques. Our division serves as an extension of Thermo Fisher’s Software R&D teams while enhancing our responsiveness and attention in enabling our customers to make the world healthier, cleaner and safer. Thermo Fisher was built to serve society and that sense of purpose will continue to enhance innovation and scientific advancement. We are committed to diversity in our workforce and is proud to be an equal opportunity employer
We apply industry standard methodologies to the design, development, and deployment of world- class software products built to demonstrate the power and scalability of the cloud.
Roles & Responsibilities:
Purpose:
The Software Staff Engineer provides software and systems architectural and design leadership to multiple Software Development Scrum Teams delivering a Gen AI Solution.
As a Lead Developer, this individual will actively contribute to the architecture, design, and development of new features, integrating Generative AI systems to improve functionality. The role involves working with AI frameworks and models, ensuring seamless integration with existing product offerings. In addition to that, the role also demands leading, empowering, mentoring, and providing ample guidance to other team members with respect to technical challenges.
Responsibilities:
Be the team’s “go-to” person for architectural, design, and implementation-related questions and provide mentorship.Actively contribute to the solution analysis of requirements.Understand, articulate, and challenge the requirements.Provide mentorship regarding design activity to other programmers on technical aspects relating to the project.Proactively look for ways and patterns to continuously automate feature testing with measurable and tangible goals.Be authentic, transparent, and lead by example, holding self and others accountable. Encourage, motivate, and collaborate with others.Anticipate needs and problems while crafting solutions. Be willing to ask difficult questions and take risks. Greet challenge and change as opportunities.Be a highly motivated fast learner who can self-start and “figure out what needs figuring out.”Actively participate in development community practices by sharing and learning standard methodologies, leading initiatives within the community, and getting involved in other organization initiatives.Possess excellent verbal and written communication skills. Ability to effectively detail artifacts and processes, then explain them to others.Candidate Requirements:
Education: Bachelors in Engineering or Masters or equivalent experience in Computer Science with 10+ years of proven experience.
Mandatory Skills, Knowledge, and Experience:
Python Development Experience:6+ years experience in Python backend development, emphasizing RESTful APIs and FastAPI.
Generative AI (Gen AI) & OpenAI Integration:Hands-on experience with Generative AI frameworks and APIs, including OpenAI models for generating human-like responses, completing tasks, and automating processes. Knowledge of how to effectively integrate these models into applications.
API Development & Integration:Extensive experience in building and maintaining REST APIs using FastAPI, ensuring efficient communication between different services and applications. Familiarity with authentication, authorization, and API rate-limiting.
Data Engineering & Processing:Strong skills in data engineering, including data extraction, transformation, and loading (ETL) processes. Expertise in Pandas for data manipulation, analysis, and handling large datasets.
LLM (Large Language Model) Prompt Engineering:Experience in timely engineering for LLMs. Ability to craft and optimize prompts for specific use cases to extract relevant, high-quality outputs.
Python Data Science Libraries:Strong proficiency in Pandas, NumPy, and other data analysis libraries to process and manipulate large volumes of data. Experience in generating data insights and performing statistical analyses.
Version Control & CI/CD:Proficient in using Git for version control and familiar with CI/CD pipelines for automated testing and deployment processes.
Scrum and Agile Methodologies:3+ years of experience with Scrum or Agile-based software development methodologies, with a focus on iterative development and collaboration.
Testing and Automation:Experience in unit testing, integration testing, and automated testing using frameworks like pytest and unittest to ensure code quality and reliability.
Communication & Documentation:Excellent verbal and written communication skills, capable of detailing code, technical processes, and explaining them to both technical and non-technical collaborators.
Non-Functional Requirements (NFR):Experience in defining and implementing Non-Functional Requirements such as performance optimizations, scalability, and security in data-driven applications.
Nice to Have Skills, Knowledge, and Experience:
Cloud Services & Deployment:Experience with cloud platforms like AWS or GCP, specifically related to data storage, serverless computing, and scalable APIs.
Data Pipeline Tools:Familiarity with data pipeline tools like Apache Airflow, Apache Kafka, or similar platforms for managing and orchestrating data workflows.
Machine Learning & AI Frameworks:Experience with machine learning libraries such as scikit-learn, TensorFlow, PyTorch, or similar, particularly in building and training models for data-driven applications.
Code Quality & Analysis Tools:Experience with SonarQube, ESLint, or similar tools for code quality analysis, ensuring maintainability and scalability of the codebase.
Our world-class software products and solutions accelerate scientific discovery and lab productivity. These solutions,
• Provide rich content, selection tools, collaboration tools and scientific apps that allow our customers to focus on innovation and the complexities of their science.
• Create a connected world for our customers where discoveries happen the thoughtful way, where every device/product is connected, self-aware, and self-healing—thereby enabling efficient workflows and collaborative science.
We apply industry standard methodologies to the design, development, and deployment of outstanding software products built to demonstrate the power and scalability of the cloud.
Roles & Responsibilities:
Purpose:
The role is of 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. As a Lead Developer, this individual will actively contribute to the architecture, design, and development of new UI features, integrating Generative AI systems to enhance user experiences and interface functionality. The role involves working with AI frameworks and models while ensuring seamless integration with the overall product offerings, focusing on intuitive and user-friendly UI design. 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 work towards identifying technical risks, alternate solutions to various problems etc.Responsible for E2E ownership (Design to support) of multiple significant software modules Responsible for leading the integrity of technical work on significant concurrent projects.Plans to participate and perform the technical work of an assignment. Guides design activity to 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 goalsIs authentic, open and leads by example, holding self and others accountable? Encourage motivates and collaborates with othersAnticipates needs and problems while creating solutions. Is willing to ask difficult questions and do things differently. Greets challenge and change as an opportunityA 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 involve in other organization initiativesExcellent verbal and written communication skills. Ability to effectively document artefacts and processes and then explain them to othersCandidate Requirement:
Education: Bachelor's in engineering or master's in computer science with 7+ years of relevant experience
Mandatory Skills, Knowledge, and Experience:
Web Application Development Experience:Minimum 6 years of experience in Web Application Development using JavaScript, TypeScript, Angular, and Electron for building modern web and desktop applications.UI Development Expertise:
Extensive experience in Frontend Development with Angular for dynamic, single-page applications and Electronfor cross-platform desktop apps. Strong skills in HTML5, CSS3, and JavaScript for building responsive and visually appealing UIs.UI/UX Design:
Proven experience in designing and implementing user-friendly interfaces, with a focus on user experience (UX)and interaction design. Familiarity with design principles, responsive design, and ensuring compatibility across multiple devices and browsers.JavaScript Frameworks & Libraries:
Expertise in using Angular and JavaScript libraries like RxJS, NgRx for state management, and Bootstrap for responsive, mobile-first web design.Frontend Performance Optimization:
Strong understanding of performance optimization techniques for frontend applications. Experience in lazy loading, code splitting, and minimizing the load time of Angular applications.API Integration:
Extensive experience in consuming REST APIs for integrating frontend applications with backend services. Familiarity with working with asynchronous operations using RxJS or Promises in Angular.Version Control & CI/CD:
Minimum 1-year experience using GitHub for version control and managing code repositories. Familiarity with Docker, Kubernetes, and CI/CD pipelines (e.g., Jenkins) for automating deployments and tests.Scrum and Agile Methodologies:
3+ years of experience with Scrum or Agile-based software development methodologies for iterative development and collaborative teamwork.Testing and Automation:
Strong focus on automated testing, including unit, integration, and end-to-end testing. Experience with Jasmine, Karma, Cypress, or similar testing frameworks for Angular applications.Communication & Documentation:
Excellent verbal and written communication skills, capable of documenting technical processes and explaining them to both technical and non-technical audiences.Non-Functional Requirements (NFR):
Experience in defining and implementing Non-Functional Requirements (e.g., Security, Performanceoptimizations).
Nice to Have Skills, Knowledge, and Experience:
Software Architecture Design:Experience in designing and architecting large-scale and highly available frontend systems using Angular and Electron.Mobile Platform Development:
Experience with mobile frontend development using frameworks like React Native, Flutter, or similar is a plus.Code Quality & Analysis Tools:
Experience with SonarQube, ESLint, Prettier, or similar tools for code quality analysis and maintaining clean code.