Software Engineer – C#/.NET/Embedded
We are looking for an experienced Firmware Engineer with strong software development skills in C/C++ and C#. The ideal candidate will have experience with .NET Framework/.NET Core, embedded systems, ARM-based controllers, peripheral interfaces, communication protocols, and multi-threaded applications.
*Key Responsibilities*
- Design, develop, test, debug, and maintain firmware/software applications.
- Develop software using C, C++, C#, .NET Framework, and .NET Core.
- Develop and support multi-threaded applications.
- Work with ARM-based controllers and embedded systems.
- Develop and interface with peripherals such as I2C, SPI, UART, and Timers.
- Work with communication protocols and industrial solutions.
- Perform software debugging, troubleshooting, and integration.
- Develop and execute unit tests to ensure software quality and reliability.
- Work with Linux and Windows environments and understand relevant system internals.
- Use Git/BitBucket for source control and collaborate within software development teams.
- Support CI/CD processes and tools such as Jenkins.
- Collaborate with cross-functional engineering teams to develop and deliver reliable software solutions.
*Required Qualifications*
- 7–10 years of overall relevant experience.
- 4–8 years of software development experience in C/C++.
- Strong programming experience in C#, .NET Framework, and .NET Core.
- Experience developing multi-threaded applications.
- Experience with ARM-based controllers.
- Hands-on experience with I2C, SPI, UART, Timers, or similar peripheral interfaces.
- Knowledge of communication protocols.
- Experience with Git, BitBucket, or similar version control systems.
- Bachelor's or Master's degree in Computer Science, Electronics, Engineering, or a related field.
*Preferred Qualifications*
- Experience with embedded systems and RTOS.
- Experience with unit testing frameworks.
- Experience developing software for industrial solutions.
- Knowledge of Linux/Windows internals.
- Experience with CI/CD pipelines and Jenkins.
- Experience working with hardware-software integration.
Skills
C | C++ | C# | .NET Framework | .NET Core | Embedded Systems | ARM | RTOS | I2C | SPI | UART | Multi-threading | Communication Protocols | Linux | Windows | Git | BitBucket | CI/CD | Jenkins | Unit Testing
Pay: $50.00 - $55.00 per hour
Expected hours: 40.0 per week
Work Location: In person