Essential Functions / Job Description
- Extend and modify existing UI packages to improve their intuitiveness and support more efficient workflows and automation. Work with users and domain experts to understand personas, modelling processes, and intentions, and iterate on design artifacts.
- Redesign, extend, and improve existing UI packages to support additional functionalities, including Python scripting, generation of Reduced Order Models and Surrogate Models, and coupling with external AI/ML tools and DOE packages.
- Redesign and refactor existing UI packages to improve robustness, speed, and ability to handle very large models.
- Redesign and reimplement existing UI/UX packages to enable CPU‑GPU parallelization.
- Integrate and unify existing UI packages into a single unified package and implement client‑server and distributed computing architectures.
- Participate in and contribute to all phases of the software lifecycle for several UI packages: identifying future technologies, defining technical requirements, planning, designing, implementing, testing, and ongoing extensions, maintenance, support, and documentation.
- Provide technical leadership and guidance to other UI/UX and graphics developers working on the UI/UX packages.
Education and Skills / Job Requirements
- B.Sc., B.Tech, M.Sc, or M.Tech degree in computer science, applied mathematics, engineering, physics, or a computational simulation or modeling discipline.
- Proven UI design, development and testing skills.
- Skill in anticipating user needs and developing user‑centered interfaces.
- Expertise in Qt, JavaFX, Flutter, .NET, or any other UI desktop or mobile development framework.
- Expertise in modern C/C++ and Python and in integrating C/C++ application functions with graphics components.
- Expertise in using modern OpenGL APIs for graphics‑intensive UI components, and understanding real‑time graphics performance maximization.
- Experience profiling, debugging, and parallelizing code on both CPUs and GPUs.
- Proficiency in XML data and schema management and in the XML ecosystem.
- Familiarity with distributed system UI development and client‑server architectures.
- Originality, creativity, and excellent problem‑solving skills.
- Some background in developing and using UI packages for simulation, modeling, or scientific computing packages.
- Ability to work independently and in collaboration with computational scientists and computer scientists.
- Excellent written and oral communication skills.
Location
The position is open in the Applied Materials India offices in Pune and Bengaluru.
Additional Information
- Time Type: Full time
- Employee Type: Assignee / Regular
- Travel: No
- Relocation Eligible: Yes
Applied Materials is an Equal Opportunity Employer. Qualified applicants will receive consideration for employment without regard to race, color, national origin, citizenship, ancestry, religion, creed, sex, sexual orientation, gender identity, age, disability, veteran or military status, or any other basis prohibited by law.