- Company Name
- Nanometrics Inc.
- Job Title
- Senior Software Developer - R&D
- Job Description
-
Job title: Senior Software Developer – R&D
Role Summary: Lead the design, architecture, and implementation of complex, multi‑disciplinary software systems across embedded, data‑center, and cloud environments, while mentoring developers and driving technical strategy for R&D initiatives.
Expectations:
- 5+ years professional software development, delivering large‑scale systems.
- Proven expertise in at least two core languages (C++, Java, Rust, Python, Go) and the ability to rapidly adopt new technologies.
- Deep knowledge of networking, communication protocols, concurrency, data structures, and database trade‑offs (relational & NoSQL).
- Experience with embedded systems, enterprise data centers, and cloud platforms.
- Advanced proficiency with Git, CI/CD pipelines, automated testing, and code‑quality tooling.
- Excellent communication skills, fluent in English, capable of explaining complex architecture to both technical and non‑technical audiences.
Key Responsibilities:
- Own architectural design and implementation of high‑performance, scalable software across firmware, devices, and cloud.
- Define and justify technology, tools, and frameworks for long‑term maintainability.
- Resolve complex reliability, data‑integrity, and performance issues across the full stack.
- Set code‑quality standards, conduct code reviews, and mentor junior/intermediate developers.
- Collaborate with Product Management and R&D leadership to create roadmaps, estimate projects, assess risks, and deliver features to completion.
- Identify and improve development, deployment, and operational processes (e.g., CI/CD, test automation).
Required Skills:
- Software architecture and design for embedded, enterprise, and cloud systems.
- Multilanguage programming (C++, Java, Rust, Python, Go) and rapid tech adoption.
- Networking, protocols, concurrency models, data structures, and database systems.
- Embedded firmware development and device‑level programming.
- CI/CD, Git workflow, automated testing, and tooling.
- Mentoring, code review, and quality assurance.
- Project estimation, risk assessment, and cross‑functional collaboration.
Required Education & Certifications:
- Bachelor’s degree in Software Engineering, Computer Science, Electrical Engineering, or related field (equivalent college degree acceptable).
- No mandatory certifications required.