About us
ARENGY is a Digital and Cybersecurity Consulting Company operating in the Middle East from Dubai. Our customers are the most successful industry leaders executing projects around the globe. We are looking for a Senior Embedded Software Engineer for a permanent position in Abu Dhabi.
Job Description
Responsibilities:
• Strong software architecting and design capabilities, including software reusability, in accordance with industry best practices.
• Strong verbal and graphical communication skills – to clearly convey architecture and design concepts to the team. Be able to document software requirements and designs as graphical and non-graphical models. Promote model-based engineering.
• Provide guidance to design teams w.r.t. technical specification of software design especially considering international standards, practices, and certification, e.g., MIL-STDs, IEC/IEEE standards, Unified Modelling Language, and DO-178C, etc., as applicable.
• Propose, obtain buy-in and implement sound and advanced engineering practices. Set high standards in the development of Software Requirement Specifications, Software Design Documents and Interface Control Specifications, utilizing (amongst others) static and behavioural software models.
• Set an example by timeously delivering working code that satisfies requirements, and which is in compliance with company software quality and coding standards, configuration management practices, etc.
• Set an example and provide guidance to technical design teams regarding evaluation, testing practices and methods, and verification, acceptance and certification.
• Develop new, as well as support and maintain existing embedded C software:
o Investigate and comprehend the structure and functional execution and flow of existing software
o Design new and/or modify existing software to address new requirements, catering for reusability
o Investigate and fix reported defects
o Comply with the structure and logic of existing software as may be required
o Software re-factoring, where applicable, and with approval of design authority:
• Improve the structure and logic of the existing software
• Re-structure software with the aim of re-use
o Update modified designs and specifications, as required
o Ensure integrity of traceability to/from/between higher level requirements and designs
• Provide leadership in the generation and review of engineering software models and documentation. Organize and chair design reviews and provide constructive inputs.
• Mentor and train junior technical personnel.
• Provide inputs to management regarding future software requirements and needs. Assist in the generation of a technology horizon plan that includes resources and software development tools.
Required qualifications
- Master's degree in electronic/Software Eng.
- Minimum 5 years' experience in software subsystem design
- 8+ years' experience in the software engineering domain
- 5+ years' experience in the certification/verification methodology of software
- Strong knowledge of software engineering principles, data structures, algorithms, and design patterns.
- Proficient in debugging and troubleshooting embedded software.
- Experience with real-time operating systems (RTOS) and device drivers.
- Familiarity with software configuration management tools and version control systems.
- Excellent problem-solving skills and ability to work independently as well as in a collaborative team environment.
- Strong communication skills to effectively convey technical concepts and collaborate with cross-functional teams.