Job Description
Company: muxtronics
Position: R&D Software Engineer
Location: Islamabad, Pakistan
Type: Fulltime
Role Overview
As an R&D Software Engineer, you will architect and implement embeddedtocloud solutions and Android interfaces for our nextgeneration hardware. You’ll collaborate with mechanical and electronics teams to turn concepts into reliable, userfriendly products.
Key Responsibilities:
Embedded Systems & Firmware Development
- Design, develop, and test firmware for ARM Cortex (STM32), AVR (ATmega), ESP32, and Arduino microcontrollers.
- Write efficient, real-time embedded C/C++ code for motor controllers, solar charge controllers, and sensor-based systems.
- Develop and optimize PID control loops for precision tasks (e.g., leveling in laser land levelers).
- Interface microcontrollers with various peripherals (PWM drivers, ADCs, encoders, relays, MOSFET drivers, etc.).
- Implement and troubleshoot communication protocols:
- UART, SPI, I2C
- Modbus (RS-485), CAN Bus, LIN
- Wireless: BLE, Wi-Fi, LoRa
GNSS System Integration
- Integrate GNSS modules such as:
- u-blox NEO-M8N, u-blox NEO-M9N
- ZED-F9P (RTK-capable for high precision)
- Ublox F9H / RTK dual-band modules
- Parse and use NMEA, UBX, and RTCM protocols for position and correction data.
- Develop algorithms for:
- Real-time geolocation tracking
- Heading and orientation determination
- Precision land leveling, path-following, and area mapping
- Implement support for RTK (Real-Time Kinematic) positioning using base-rover architecture.
Hardware-Software Interfacing
- Work closely with the hardware team to design PCBs optimized for firmware functionality.
- Assist in component selection, schematic validation, and PCB troubleshooting.
- Use tools like:
- Altium Designer
- Eagle / KiCad
- Logic Analyzers & Oscilloscopes
- ST-Link, JTAG, AVR ISP programmers
Testing, QA & Deployment
- Build test benches for lab simulations and functional testing.
- Conduct field testing in agricultural and industrial environments to ensure performance in harsh conditions.
- Perform debugging and root-cause analysis for failed modules or unexpected system behavior.
- Maintain version control using Git and document all revisions and findings in project logs.
IoT & Data Integration (Bonus)
- Design systems that can optionally upload field data to the cloud via MQTT or RESTful APIs.
- Experience with platforms like ThingsBoard, Firebase, or AWS IoT Core is a plus.
- Develop dashboards for field performance metrics, usage logs, and predictive maintenance.
Requirements:
Education
- Bachelor’s or Master’s in:
- Electronics Engineering
- Mechatronics Engineering
- Computer Engineering
- or equivalent
Technical Skills (Must-Have)
Programming:
- Embedded: C, C++, Assembly (optional)
- Android: Java, Kotlin
- Scripting (for automation/debugging): Python, Bash
Microcontrollers:
- STM32 (ARM Cortex-M0/M3/M4)
- ESP32 / ESP8266
- AVR (ATmega328p, ATmega2560, etc.)
- Arduino IDE, PlatformIO
GNSS:
- Modules: u-blox NEO-M8N, ZED-F9P, Beitian BN-880, etc.
- Protocols: NMEA, UBX, RTCM
- Libraries: TinyGPS++, NeoGPS, u-blox C libraries
Communication:
- UART, SPI, I2C
- CAN, RS-485 (Modbus), BLE
- LoRaWAN (optional)
Other Skills
- Version control with Git/GitHub
- Strong documentation practices
- Ability to read datasheets and application notes
- Excellent problem-solving and debugging skills
- Fluent in English; proficiency in Urdu/Punjabi is a bonus (for field testing and user research)
Bonus Skills (Highly Preferred but Not Required)
- RTK system calibration and field implementation
- RF antenna design or optimization
- Solar system programming (MPPT, PWM algorithms)
- Experience working in agri-tech or renewable energy startups
- Cloud dashboards or integration with AWS, Azure, or Firebase
Requirements & Skills
Here’s a breakdown of the core skills and competencies the R&D Software Engineer role at Muxtronics requires:
Technical Skills (Must-Have)
Programming Languages:
Embedded C, C++ (real-time, resource-constrained firmware)
Assembly (optional)
Android: Java, Kotlin
Scripting for automation/debugging: Python, Bash
Microcontroller Platforms:
STM32 series (ARM Cortex-M0/M3/M4)
ESP32 / ESP8266
AVR (e.g., ATmega328p, ATmega2560)
Familiarity with Arduino IDE & PlatformIO
GNSS System Integration:
Modules: u-blox NEO-M8N / NEO-M9N, ZED-F9P, Beitian BN-880, etc.
Protocols: NMEA, UBX, RTCM
Libraries: TinyGPS++, NeoGPS, u-blox C libraries
Communication Protocols:
UART, SPI, I²C
CAN, RS-485 (Modbus), LIN
Wireless: BLE, Wi-Fi, LoRaWAN (optional)
Hardware-Software Interfacing Tools:
PCB and schematic tools: Altium Designer, Eagle, KiCad
Debugging: Logic analyzers, oscilloscopes, ST-Link, JTAG, AVR ISP programmers
Version Control & Documentation:
Git / GitHub workflows
Strong technical writing and documentation practices
Other Essential Skills
Excellent problem-solving and low-level debugging abilities
Ability to read and interpret datasheets and application notes
Fluent in English; Urdu/Punjabi proficiency is a bonus for field testing and user research
Bonus Skills (Highly Preferred)
RTK system calibration and field deployment
RF antenna design or optimization
Solar-power algorithms (e.g., MPPT, PWM charge-control)
Experience in agri-tech or renewable-energy startups
Cloud-based dashboards/integration (AWS, Azure, Firebase)
These skills will equip you to design, develop, test, and deploy robust embedded-to-cloud solutions—working closely with both electronics and mechanical teams to bring Muxtronics’ next-generation agricultural and industrial hardware to life.
Explore More Opportunities
Find similar jobs and career opportunities
