Job Type
Work Type
Location
Experience
Roles & Responsibilities of Embedded Software Engineer
· Involve in business case & user requirement gathering and defining the system requirements to develop prototype and demonstrate it with POC.
· Worked on Windows CE and Embedded Operating Systems. Develop architecture, design, code, and test case reviews.
· Must have very good understanding on Windows Internals/ Core areas, network stack, driver stack and model etc.
· Create supporting documents for targeted design related activities/objectives and present to customers and internal groups for successful results.
· Strong ability to integrate various components from different vendors into a fully functional and coherent system.
· Have deep understanding Device Driver, Kernel, Shell, IPC, RDP, Memory management, Threads, Graphics – GDI, Storage (USB, SD Drive and others), File System & Networking.
· Interpret and report testing results, and be a vocal proponent for quality in every phase of the development process.
· Ability to debug an issue starting from Application layer going deep all the way thru Kernel, Drivers and Memory level debugging to nail down an issue.
· Ability to code/understand Assembly language required for debugging, and perform Crash Dump Analysis, remote debugging, etc.
Education Qualification & Skill Required
· Bachelor's or Graduate's Degree in computer science, engineering or computer engineering.
· Proficiency in C/C++ and Java for embedded applications with 5 years of experience.
· Familiarity with WinCE SDKs and Android development tools with command in scripting and debugging for embedded systems.
· Knowledge of CAN Bus, RS232, RS485 and MQTT communication protocols.
· Experience with Linux, Python, Agile, CMMI, GIT, HDMI, and FPGA software and systems is added advantage.
· Experience with taxi meter or similar devices or vehicle-based embedded systems is additional advantage.