Senior Software Engineer

Job Detail
Industry
Investments
Functional Area:
Software Engineering
Total Position:
1
Job Type:
Full Time/Permanent ( First Shift (Day)‎ )
Department:
Research Products Development Company (RPDC)
Job Location:
Riyadh, Saudi Arabia
Gender:
No Preference
Nationality:
Saudi
Degree Title:
Robotics, Computer science, Computer Engineering, Electrical Engineering or equivalent.
Career Level:
Experienced Professional
Education:
Masters
Minimum Experience:
5 Years
Work Permit:
Saudi Arabia
Apply By :
Jul 31, 2019
Posted On:
Jul 16, 2019
Job Description

Job Summary:

The senior software engineer in robotics will play a key role in the development of the robotic systems for industry 4.0. He/she will work closely with the other software engineers as well as engineers from other groups to architect, design and implement software solutions based on user requirements. We are looking for a candidate that can work independently and also function well within a team, is flexible, self-motivated, curious and willing to revolutionize the world of medical robotics.

Core Job Responsibilities:

• Work with software and system engineers to develop software for MDOF robotic arms and end effector applications.

• Design, implement, and validate C++ applications in industerial environment.

• Integrate and test software solutions in simulation and on the robotic systems.

• Take part of the development of a simulation environment for our robotic systems.

• Quickly implement proof of concepts and test them on the systems.

• Participate in design discussion and code review.

• Other Responsibilities:

• Development of software that enables algorithm evaluation

• Work directly with robotics test engineer to review documentation, experiment results and analysis.

• Assist with other cross-functional projects depending on need and skillset.

Requirements:

• MS or PhD (preferred) in Robotics, Computer science, Computer Engineering, Electrical Engineering or equivalent.

• 5+ years designing and developing software and simulator for complex electro- mechanical systems.

• Strong background in object oriented programming and system architecture.

• Proficiency with C/C++ programming and multi-threaded applications.

• Strong experience in robotic and control architecture.

• Experience with robotics software library and robotics simulator such as ROS, OROCOS, Gazebo…

• Experience with real-time software applications and RTOS (QNX preferred).

• Experience with Unit testing and software Verification and Validation processes.

• Excellent communication and documentation skills.

Desired Experience:

• Experience with dynamics simulation libraries such as Bullet, ODE…

• Experience with TCP/IP based network programming.

• Experience with developing software in a regulated environment, industrial and Medical device preferred.

• Experience with Ethercat real time communication fieldbus for automation.

• Experience with computer vision, computer graphics and image processing.

• Knowledge of OpenGL and 3D rendering.

• Experience with GUI development under QT.

• Experience developing software under Linux OS