Design, develop, and maintain C# based Keysight instrument diagnostic application and ecosystem, embedded asset management applications cover multiple Keysight product lines.
Integrate SCPI-based communication protocols with various measurement instruments, working closely with instrument product R&D engineer for standardize implementation.
Implement file serialization techniques (e.g., XML, JSON, binary) for efficient data storage and configuration management.
Configure and improve automated builds (CI/CD), Jenkins build pipelines, nuget packaging and code signing using certificates (Venafi).
Diagnose and resolve build failures including dependencies issue, environment differences, certificate problems.
Develop software with a solid architecture using object-oriented principles and modular design patterns.
Utilize multi-threading and asynchronous programming to optimize performance and responsiveness of applications.
Collaborate with hardware and firmware teams to support product integration and testing.
Qualifications
Proficient in C# and .NET framework, with a strong understanding of object-oriented design.
Strong experience with Jenkins, build pipelines, and Linux-based build agents.
Proficient in powershell, docker scripting, nuget packaging.
Understanding of software architecture, threading, and synchronization techniques.
Good problem-solving skills and ability to work in a collaborative environment.
Experience working with Angular and TypeScript, good knowledge in CSS/HTML
Strong knowledge with the WPF and MVVM architecture
Strong knowledge with WCF/WebSocket protocol.
Strong knowledge with database such as MS SQL Server or MYSQL
Experience with Linux/Windows server management and AWS cloud
Familiar with C++/CLI programming and Conan.
Familiar with .NET 8 or above to build cross platform applications.
Bachelor's or Master's degree in Computer Engineering, or a related field.
Over 7 years of software development experience.
Good to have
Familiarity with SCPI protocol and IO libraries for instrument communication.
Experience with file I/O and serialization methods.