Senior Software Engineer (ADG System R&D)
The Senior Software Engineer will design and maintain C# UI components and reusable libraries for aerospace and defense test systems. The role involves full-lifecycle development, including implementation, testing, and collaboration with project teams to deliver scalable software solutions.
- Compensation
- Not disclosed
- Location
- Bayan Lepas, Pulau Pinang, Malaysia
- Work setup
- Hybrid
- Seniority
- Senior
- Employment
- Not specified
- Experience
- 6+ years
- Category
- Software engineering
- Posted
Skills
Must have
- Bachelor's degree in Computer Science, Software Engineering, Electrical Engineering, or a related technical field.
- Minimum 6 years of software development experience using object-oriented programming languages such as C# or .NET.
- Experience developing and maintaining desktop or enterprise software applications.
- Strong understanding of software design principles, design patterns, and modern software engineering practices.
- Experience with source control systems, build processes, and software development lifecycle practices.
- Experience troubleshooting and resolving complex technical issues.
- Demonstrated ability to deliver project commitments and support software releases.
- Strong communication and collaboration skills.
Nice to have
- Experience developing C# desktop applications using WPF and MVVM architecture.
- Experience building reusable frameworks, libraries, or UI components.
- Experience with automated testing, unit testing, and software quality practices.
- Familiarity with CI/CD pipelines, build automation, and release management processes.
- Experience working on software projects involving hardware integration, instrumentation, or engineering applications.
- Experience with API integration technologies such as gRPC, REST APIs, or messaging frameworks.
- Knowledge of modern UI/UX principles and application architecture.
- Experience mentoring junior engineers.
- Experience working in Agile or iterative software development environments.
- Experience with NI LabVIEW and NI test equipment.
Full description
The Team:
The Systems R&D team within the Aerospace, Defense and Government (ADG) Business Unit develops innovative test and measurement solutions for applications such as avionics, communications, navigation, SIGINT, electronic warfare, and RADAR. Leveraging NI’s portfolio of RF instrumentation, FPGA technologies, software-defined radios, and software platforms, the team delivers differentiated system-level solutions that support NI’s vision of leading the industry in software-defined automated test and measurement systems.
The Role:
We are seeking a Senior Software Engineer to play a key role in the development and delivery of modern text-based UI panel solutions. This individual will be responsible for designing, implementing, testing, and maintaining C# UI components, reusable libraries, and project deliverables that enable efficient and scalable UI development.
The role requires strong software engineering skills, a passion for building high-quality solutions, and the ability to work closely with technical leads and project teams to ensure successful project execution and product releases. The individual is expected to be a hands-on contributor who takes ownership of technical deliverables, drives engineering excellence, and helps transform requirements into robust and maintainable software solutions.
Key Responsibilities
1.Software Development & Project Delivery
- Design, develop, and maintain high-quality text-based UI panel solutions, reusable components, and shared libraries that improve development efficiency and consistency.
- Translate business and technical requirements into scalable, maintainable software solutions that meet project objectives and release commitments.
- Own assigned deliverables throughout the software development lifecycle, including design, implementation, integration, troubleshooting, and deployment.
- Work closely with project teams to identify and resolve technical risks, dependencies, and delivery challenges to ensure successful project releases.
- Contribute to the continuous improvement of development tools, frameworks, and engineering practices.
- Testing, Quality & Reliability
- Develop and maintain automated tests and validation mechanisms to ensure software quality and reliability.
- Participate in design reviews, code reviews, and testing activities to ensure solutions meet performance, maintainability, and quality expectations.
- Drive defect resolution, root cause analysis, and continuous improvement of engineering standards.
- Support release readiness, stabilization activities, and post-release issue resolution.
- Collaboration & Knowledge Sharing
- Collaborate effectively with engineers, technical leads, and project stakeholders to deliver successful outcomes.