- Company Name
- Keysight Technologies
- Job Title
- Senior Software Developer in C++
- Job Description
-
**Job Title**
Senior Software Developer – C++
**Role Summary**
Lead the design and implementation of high‑performance electromagnetic (EM) simulation algorithms. Drive architectural decisions, optimize computational techniques, and ensure software meets accuracy, scalability, and reliability standards for advanced RF, microwave, and millimeter‑wave product development. Collaborate across engineering, QA, and product teams to translate customer and market requirements into robust, maintainable code within an Agile environment.
**Expectations**
- Deliver multiple components of the EM simulator with rigorous performance and quality metrics.
- Mentor junior developers on design, coding, and testing best practices.
- Champion continuous improvement in software engineering processes (TDD, CI/CD, code reviews).
- Evaluate and pilot emerging technologies to extend simulator capabilities.
- Provide expert technical guidance to cross‑functional stakeholders and customers.
**Key Responsibilities**
- Define, develop, and optimize numerical solvers, field‑solver kernels, and algorithmic pipelines for large‑scale EM problems.
- Investigate, benchmark, and integrate novel computational methods and hardware acceleration (GPU, HPC).
- Troubleshoot algorithmic bottlenecks, memory usage, and numerical stability issues.
- Draft and maintain technical documentation, design reviews, and release notes.
- Participate in product roadmap discussions, translating business goals into technical requirements.
- Conduct peer code reviews and enforce coding standards across the team.
- Manage and contribute to version control, build automation, and CI/CD pipelines.
- Foster an environment of learning and knowledge sharing, including workshops on C++ best practices and performance profiling.
**Required Skills**
- Advanced proficiency in C++ (C++17/20+).
- Deep understanding of computational electromagnetics, numerical analysis, and solver design.
- Experience with large‑scale, high‑performance simulation software.
- Strong software design, refactoring, and algorithmic optimization abilities.
- Excellent analytical and problem‑solving skills.
- Proven communication and teamwork skills in distributed, multi‑cultural settings.
- Familiarity with Agile methodology, TDD, code reviews, and CI/CD practices.
- Git experience and modern build systems.
- Ability to learn and evaluate new programming languages and frameworks quickly.
**Required Education & Certifications**
- Master’s or PhD in Electrical Engineering, Computer Science, Applied Mathematics, or a related technical discipline.
- No specific certifications required; ongoing professional development and industry conference attendance preferred.