Job Description


Ref No: AM17686

County Galway, Republic of Ireland

Competitive salary


Role Overview

As Software Architect you will be responsible for defining and understanding the interactions and dependencies among components of the software, and communication of these concepts to developers. This includes the creation of the High-Level Software Design and associated documentation, in adherence to company processes and project timelines.


Design the Software Architecture and create the High-Level Design Document

Communicate the Software Architecture to the development team, providing guidance to developers as required

Make high-level design choices based on detailed analysis and understanding of the software behaviours and requirements

Subdivide a complex software feature into smaller more manageable pieces (software modules)

Define software module responsibilities, interfaces and interactions

Review and understand the System Requirements, System Architecture and Hardware/Software interface for software products

Review and input into the Software Requirements Specification

Facilitate and contribute to technical communication with relevant customers (internal and external).

Design of software architecture to ensure robustness, reusability and portability across various platforms.

Research and development of a software architecture including scene analysis and scene viewing applications

Integration of advanced and concept algorithms from other groups within the company

Software Resources Calculations (CPU and Memory Estimations)

Software analysis of Video Pipeline from Imager to Head Unit.

Software system analysis of various KPI’s including latencies, start-up times, mode switching times, rendering times etc

Optimisation of the architecture based on above analysis to improve KPI’s

Architectural analysis and debug of any software issues, re-design where necessary

General software & product design reviews and problem resolution

Contribute to software design reviews, technical discussions and process improvement activities as required

Perform Software Requirements Engineering tasks as required

Ensure full traceability between High Level Design and Software Requirements Specification

Complete scheduled tasks within assigned projects to deliver as per agreed Timing Plan

Adherence to company procedures and internal process leading to full SPICE (ISO15504) Compliance for all relevant processes, in particular ENG.4 and ENG.5

Assist with technical estimates as input into project schedules

Education and Experience requirements:

Honours Degree in Electronic Engineering or Computer Engineering or equivalent

Master's or PhD level qualification would be an advantage

Minimum 8 years' embedded software engineering experience

Experience with C/C++ development

Experience with 8/16/32 bit micro-controllers, DSP’s and multi-core SoC’s

Multi-core software architecture design experience

Familiar with CAN, FlexRay, LIN and Ethernet networks

Experience with UML modelling and associated tools (e.g. Enterprise Architect)

Familiar with software development models/standards CMMI, ISO15504 etc

Object Orientated Design and Design Patterns experience

Experience with Ethernet protocol desirable, TCP\IP, RPC, GPB

Experience with Advanced Video Processing, Video Encoding/Decoding, Video Compression MJPEG, MPEG4 and H.264

Excellent knowledge of embedded system operating systems, RTOS, Linux, SysBios, Greenhills Integrity

Knowledge of other high performance video processors such as GPU's an advantage

Mindset of continuous improvement

High degree of innovation and creativity

Excellent attention to detail

Excellent communication skills, both written and verbal


Our Expert Team

Search for your perfect job

Send your CV