What are the responsibilities and job description for the Principal Software Architect position at Thermo Fisher Scientific?
Group/Division Summary:
As a part of the Material Science Division's Semiconductor Physical Failure Analysis (PFA) software team, you will provide software architectural leadership to a dedicated team of engineers working towards solutions that enable our semiconductor customers solve their most challenging yield issues. The core of our offerings are solutions for sample preparation and 3D imaging and metrology deployed into semiconductor labs and fabs. These workflows combine different preparation and imaging technologies with growing levels of automation.
Semiconductor technology is an integral part of our lives. Behind nearly every piece of technology that we interact with every day lies the untold story of an engineer that struggled to debug issues in their microchips. By using tools like the ones developed at Thermo Fisher, that engineer was able to drive progress in the industry and provide their solution to the world.
Position Summary:
As a Principal Software Architect, you will work with product managers, engineering teams, and customers to build a long-term architectural vision and strategy that differentiates our products from our competitors. The role of automation in semiconductor is becoming increasingly important, and thus, knowledge of how to build successful semiconductor fab equipment is needed.
Semiconductor is a fast paced and demanding industry calling for individuals to operate at the top of their game. If you are up to challenge, you will have a significant impact over the direction of the solution. Working with a team of top skilled business and technical leaders, you must help set the vision and ensure it addresses the customer’s challenges today and down the road. This means that as an architect, you must research industry trends, technology trends, set requirements for development teams, and even roll up your sleeves to prototype concepts. You will need to interface across a global organization with colleagues in Europe and Asia requiring you truly connect with people, both virtually and especially face-to-face. Our R&D organization contributing directly and indirectly to the semiconductor solution is made up of over 200 engineers across the globe. As Principal Software Architect, you will have significant influence over the development roadmap for capital equipment products intended to run 24/7 for years.
Semiconductor fabs are sophisticated ecosystems with complexity in equipment, tool processes, and workflow. A successful architect will be able to distill various sources of information, understand the complex interrelationships between hardware, software, and data, and propose elegant solutions. Influencing others to follow a common architectural direction will be instrumental to the role since you cannot go far unless you go together.
Key Responsibilities:
- Create and maintain a solution roadmap that feeds into a strategic product portfolio. A successful individual will gain and possess an overview of the whole system to provide total solution architecting, overarching into other disciplines including Electronics, Firmware, Systems, and Applications.
- Partner with the engineering and business leaders during evaluation of new initiatives
- Maintain a clear understanding of the business aspects, values, and priorities
- Possess the ability to discuss directly with customers, users, and decision makers in the Fab. This highly visible role means the individual will routinely interact with key business decision makers.
- Translate business functional/nonfunctional requirements into solution architectures with detailed specifications. Familiarity with C4 modeling is important.
- Act in the role of a product owner to lead prioritization and scoping activities.
- Provide architectural guidance to engineering teams throughout the software development cycle including concept reviews and detailed design reviews
- Accompany engineering representatives on customer visits to collect insights into our customer use-cases and how to address gaps
- Provide fast feedback and find solutions for urgent customer requests.
- Work with the various software delivery teams to ensure component development feeds seamlessly into the final product thereby avoiding a point solution.
- Collaborate with other architects from core platform and sister business units.
- Stay abreast of semiconductor industry trends with respect to automation, data analytics, machine learning, and software technologies
- Research new technologies and propose solution architectures that can potentially apply for future products.
- Prototyping proofs of concept where applicable to flesh out possibilities.
- Must be willing to travel up to 30% maximum for face-to-face meetings with customer or internal global engineering teams.
Qualifications:
A BS in Computer Science, Computer Engineering, or equivalent together with 10 years in software development with the following experience:
- 10 years’ experience in architecting, designing, and presenting software solutions in innovative environments
- Proven experience with semiconductor capital equipment
- Experience in developing SW applications controlling hardware
- Advanced knowledge of software development stacks (C , C#, Python) and operating systems
- Solid understanding of design patterns, algorithms, and data structures
- Problem domain experience (electron microscopy, process automation, metrology, fab connectivity, HVM, etc.) considered a plus
- Familiarity with various software architecture paradigms such as microservices and web technologies
- Familiarity with docker, Kubernetes, virtual machines
- Familiarity with machine learning concepts welcomed
- Possess excellent communication skills (technical and business), be persuasive, able to listen, and incorporate perspectives of others.
- Demonstrated ability to find the consensus with other cooperating R&D functions (PEMs, System Architects, Resource Managers)
- Ability to identify and resolve conflicting requirements in both technical and resource domains without unnecessary issues
- Experience working with agile development teams
Salary : $40 - $0