company-logo-image

Senior Embedded Software Engineer

ashley-avatar-image

AI-generated summary

beta

This job is for a Senior Embedded Software Engineer developing firmware for robots. You might like this job because it involves designing system architecture, optimizing code, and collaborating with hardware engineers. Additional skills in electronics, motion control, and wireless communication are a bonus.

RM 5000 - RM 7000

Bayan Lepas, Penang

Job Description

Job Description:

You will be part of the team for designing & building the scalable firmware for our robot. You will participate in translating the functional requirements into technical design and turn the design into reality.

Responsibilities:

  • System Architecture and Design: Designing software architecture for embedded systems, considering hardware constraints, real-time system requirements, and system specifications.
  • Programming: Writing code for embedded systems using programming languages such as C, python & bash scripting. Developing software that interfaces with hardware
  • components.
  • Debugging and Testing: Identifying and fixing software bugs, as well as conducting thorough testing to ensure the reliability and performance of embedded systems.
  • Integration: Integrating software with hardware components and third-party software. Collaborating with hardware engineers to ensure seamless interaction between software and hardware.
  • Optimization: Optimizing code for performance, memory usage, and power consumption. Implementing efficient algorithms and techniques to meet system requirements.
  • Documentation: Creating and maintaining comprehensive documentation for software design, code, and testing procedures. Ensuring that documentation is clear and accessible to other team members.
  • Collaboration: Collaborating with cross-functional teams, including hardware engineers, firmware engineers, and product managers, to achieve overall project goals.
  • Maintenance and Upgrades: Providing ongoing support and maintenance for embedded software. Implementing software upgrades and patches as needed.

Bonus:

  • Knowledge of electrical and electronics, including schematic circuits and PCB design.
  • Experience in motion control systems and configuring sensor devices.
  • Strong background in physics and mathematics.
  • Proficiency in additional programming languages such as C++, Python, Bash.
  • Experience with wireless communication protocols, e.g. Zigbee/WiFi/cellular.

Job Requirements

Requirements:

  • Proficiency in utilizing debugging tools for troubleshooting and optimization purposes. Demonstrated mastery of Microcontroller (MCU) and Microprocessor (MPU) architectures, showcasing the ability to analyze, optimize, and implement effective software solutions tailored to hardware specifications.
  • Proven track record of successfully implementing Real-Time Operating Systems (RTOS) concepts and adeptness in employing advanced thread synchronization techniques to ensure deterministic behavior and system reliability.
  • Proficiency in configuring and utilizing communication peripherals including Serial Peripheral Interface (SPI), Controller Area Network (CAN), Universal Asynchronous Receiver-Transmitter (UART), and Inter-Integrated Circuit (I2C), demonstrating the capability to establish robust data exchange mechanisms in embedded systems.
  • Advanced understanding of thread synchronization principles, enabling the creation of efficient and scalable software architectures in embedded environments.
  • Expertise in the C programming language and comprehensive code management practices, ensuring the development of high-quality, maintainable codebases for embedded systems.
  • Proficiency in Git version control for collaborative software development, encompassing adeptness in branching strategies, code reviews, and continuous integration practices to uphold code integrity and project traceability.
  • Experience with Software Development Kits (SDKs) manipulation and customization, exemplified by proficiency in platforms such as Zephyr and FreeRTOS, facilitating tailored software solutions aligned with project requirements.
  • Exceptional communication skills, enabling effective collaboration and exchange of ideas with multidisciplinary team members, including hardware engineers, firmware engineers, and product managers.
  • Demonstrated capability in conducting thorough code reviews, fostering a culture of quality assurance and continuous improvement within the development team.
  • Proficiency in utilizing debugging tools for troubleshooting and optimization purposes, ensuring timely resolution of software issues and optimization of system performance.

Skills

Microcontrollers
Microprocessor

Company Benefits

New laptop for every employee

Everyone who works at Pingspace will receive a new laptop for work!

Free Coffee / Chocolate Drinks

We have a coffee machine at the pantry for everyone to have a cup of hot coffee or chocolate at any time!

Workout

Everyone can have a nice workout using the bouldering wall in the office!

Casual dress code

Just make sure you're decently dressed & personal hygiene is taken care of!


Additional Info

Company Activity

Last active - few hours ago

Career Level

Senior Executive


Company Profile

Pingspace-logo-image

Pingspace

Pingspace, a warehouse robotics startup, is on a mission to simplify, digitize, and automate the warehouse industry. We have a team of passionate people who are brave and bold to challenge the status quo and change how an industry works.