Engineer III, Software
Thermo Fisher Scientific
Bengaluru, Karnataka, India
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 supplying to the development of new features. This person will be a member of a multi-functional scrum 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 give towards identifying technical risks and alternate 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 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 goals Is authentic, open and leads by example, holding self and others accountable? Encourage 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 involve in other organization initiatives Excellent verbal and written communication skills. Ability to effectively document artefacts 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 experience in Web Application Development using Javascript, Angular JS and React JS related technologies; Expertise in OOAD principles and methodologies Frontend development experience with JavaScript, Ajax, Bootstrap, HTML 5, CSS, AngularJS and understanding of browser compatibility issues. Extensive experience in Reactive Web Application development frameworks and technologies: Apache tomcat, Jetty, Juice, Spring and JSON/XML/Ajax 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 experience in Cloud computing using AWS (Amazon Web Services) such as S3, DynamoDB, SNS, SES, EC2 Proven experience of 3 or more years with databases (Postgres/MySQL/Oracle/NoSQL DB), persistence frameworks, and SQL Extensive knowledge in handling complex data structures and well-versed in developing multithreading applications. Minimum 1-year experience with GitHub, Docker, Kubernetes, CI/CD frameworks (Jenkins) 3 years or more on using Scrum-based software development methodologies Experience, instincts, and enthusiasm around testing, testability and automation Excellent verbal and written communication skills. Ability to effectively document artefacts and processes and then explain 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 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.