Senior Principal Desktop Software Engineer

Apply now »

Date: 2 May 2024

Location: Abu Dhabi, AE

Company: EDGE Group PJSC

About ADASI

 

ADASI is the regional leader in autonomous systems and services, dedicated to offering holistic solutions – from the development and production of unmanned systems to joint mission analysis and careful equipment acquisition. ADASI manufactures, operates and maintains next-generation autonomous solutions for air, land and sea – capable of performing in a diverse range of demanding environments. Leveraging advanced technologies to comply with the tactical demands of the future, ADASI aims to be a world leader in building the next generation of autonomous capabilities. 

 

Key Responsibilities

 

  • Software Architecture: Lead the design and architecture of desktop software applications, defining system architecture, component design, and software interfaces to meet functional and non-functional requirements.
  • Software Development: Develop high-quality desktop software code using programming languages such as C++, Java, C#, or Python, following best practices, coding standards, and design patterns.
  • User Interface Design: Design intuitive and user-friendly graphical user interfaces (GUIs) for desktop software applications, focusing on usability, accessibility, and visual aesthetics.
  • Feature Development: Lead the development of new features and functionality for desktop software applications, including requirements analysis, design, implementation, testing, and deployment.
  • Performance Optimization: Identify performance bottlenecks and areas for optimization in desktop software applications, and implement performance improvements to enhance responsiveness, efficiency, and scalability.
  • Code Review and Quality Assurance: Conduct code reviews and quality assurance activities to ensure code quality, reliability, and maintainability, and enforce coding standards and best practices within the software development team.
  • Version Control and Configuration Management: Manage source code repositories, branches, and releases using version control systems (e.g., Git), and implement configuration management processes to track changes and dependencies.
  • Cross-Platform Development: Develop desktop software applications for multiple platforms, including Windows, macOS, and Linux, and ensure compatibility, portability, and consistency across different operating systems.
  • Technical Leadership: Provide technical leadership and guidance to software development teams, including mentoring junior engineers, conducting technical training, and promoting knowledge sharing and collaboration.

 

Education & Experience:

 

  • Bachelor's degree in Computer Science, Software Engineering, or a related field. (Master's degree or Ph.D. preferred.)
  • Minimum 8 years of experience in desktop software development, with a proven track record of designing and implementing desktop software applications.
  • Proficiency in desktop software development languages and frameworks, such as C++, Java, C#, .NET, Python, Qt, or Electron.
  • Strong understanding of software architecture principles, design patterns, and best practices for desktop application development.
  • Experience with user interface design and development using GUI frameworks (e.g., WinForms, WPF, GTK+, Qt), and familiarity with UI/UX design principles.
  • Knowledge of software development tools and practices, including integrated development environments (IDEs), build systems, testing frameworks, and debugging tools.
  • Excellent problem-solving and analytical skills, with the ability to troubleshoot complex software issues and propose effective solutions.
  • Effective communication and interpersonal skills, with the ability to collaborate effectively with cross-functional teams and stakeholders.
  • Leadership abilities, including the ability to lead software development teams, prioritize tasks, and drive technical excellence and innovation.


Job Segment: User Experience, Testing, Quality Assurance, Application Developer, Computer Science, Technology

Apply now »