Thermo Fisher Scientific Sr Staff Software Architect in Carlsbad, California
At Thermo Fisher, our mission is to serve science and improve lives. The Digital Engineering team is tasked with applying industry best practices to the design, development, and deployment of world-class software products and digital experiences built to leverage the power and scalability of the cloud. We are looking for a senior software architect with experience with cloud based software development of platform comprised micro services to support multiple digital products. The main solution set focus for the candidate will be enterprise user and account management, user profile, federated identity, customer tenancy, role and permissions management, and digital product subscriptions. You should be well versed and comfortable communicating and applying your deep architectural knowledge along with your practical solutions experience in a way that helps drive cloud platform and service development to empower application development teams to build highly advanced yet simple to use scientific and eCommerce applications for the cloud.
Provide software and systems architectural and design leadership to teamof colocated and remote engineers.
Design and implement cloud services and software architecture for new services, and extensions to existing services to support our product portfolio.
Be the group’s “go-to” person for architectural, design and implementation related questions and provide guidance.
Determine, develop, and communicate the technology strategy and roadmap for achieve our productvision for accounts, federation, roles and permissions, device identity, multi-tenancy, digital subscriptions, and authorization.
Identify and define required system interfaces and map dependencies.
Develop project non-functional requirements and provide infrastructure design oversight to support developed solutions
Investigate new technologies for use on products; perform feasibility studies; design and implement prototypes for early / usability testing.
Educate engineers on good design & implementation principles, and enforce design concepts throughout project lifecycle.
Participate throughout the software development life cycle, including the actual implementation phase as needed.
Demonstrate understanding of companies internal and external customer needs and how they affect business unit products and services. Maintain a high level of expertise through literature, competitor products & seminars.
Develop a network of experts throughout the organization, industry and suppliers. Bring company and industry knowledge as well as creative technical skills to product creation; be a content, sub-discipline specialist across the company.
Work closely with Engineering Managers and scrum development teams to provide estimations.
Actively work with multi-disciplinary team to help develop requirements and architectural approaches through evolving architecture.
Collaborate with other software groups within Thermo Fisher to more effectively integrate the application into the company’s micro services architecture.
Contribute ideas and insights to develop new technologies, applications, techniques or procedures that are creative and practical.
Work with general guidance and determines approach to work. Exercises judgment within broadly defined practices and policies. Makes decisions within high-level assignment scope independently.
Identify and solve design problems of moderate to complex scope. Independently plan and design solutions, involving potentially conflicting design requirements.
Strong application and software architecture experience is a must.
Expert level knowledge of enterprise software development in Java.
Experience in designing and implementing cloud based micro services is required.
Experience with authentication and authorization technologies such as SAML, OAuth2, and OIDC, as well as integration with web application, micro services, desktop, and mobile apps.
Experience with relational and non-relational database models and technologies such as MongoDB, AWS DynamoDB, MySQL, and PostgreSQL.
Experience with Google Guice, Spring Framework, Hybernate, Service Oriented Architecture, RESTful web services, security architecture. A working experience or knowledge of OSGI and modularity is a strong plus.
Must be proficient in asynchronous programming, multi-threading, client-server communications, data serialization, compression and encryption.
Experience with algorithm development and statistical data analysis is a plus.
Experience with cloud-based IaaS and application services. Strong knowledge of Amazon Web Services is required.
Experience with a formal software development using agile methodology is required. Knowledge of DDD and TDD is highly desired.
Systems experiencein biotech, medical device or life sciences industry a strong plus. Experience with architectures that satisfy regulated standards such as ISO 14385 or CFR Part II is also a strong plus.
Experience working with geographically distributed teams is a strong plus.
Experience with UML or similar object-oriented notation required.
The candidate must possess strong analytical, troubleshooting, and communication skills.
The candidate must be self starter, detail oriented, and highly motivated individual.
Ability to convey very complex information in both written and oral form to both non-technical and deeply technical audiences
A BS in Computer Science (or equivalent) together with 10+ years software development experience or MS with 7+ years experience.
If you are an individual with a disability who requires reasonable accommodation to complete any part of our application process, click here at https://jobs.thermofisher.com/page/show/eeo-affirmative-action-statement#accessibility for further assistance.
Thermo Fisher Scientific is an EEO/Affirmative Action Employer and does not discriminate on the basis of race, color, religion, sex, sexual orientation, gender identity, national origin, protected veteran status, disability or any other legally protected status.