Embedded Software Engineering Manager
Embedded Software Engineering Manager-Limerick-Ireland
The Embedded Software Engineering Manager is responsible for leading and developing a team of Embedded Software Engineering resources
Managing the processes and associated tools required to design, develop and sustain best in class medical equipment.
Duties include planning and budgeting for the function, determining skill needs, talent acquisition, adherence to quality processes, performance management, associate development, and allocation of resources to meet dynamic business needs.
Provide technical leadership, and provide guidance to and / or lead project teams by participating in function and business design reviews.
Influence Software functional strategy on matters including core capabilities, software quality, software processes, resource development and utilization, and technology roadmap
Work closely with other Software Engineering Managers to establish and align Software level plans and objectives with business and R&D strategic plans and objectives
In addition it is expected that the manager will initially also have a direct hands-on development role on products as the team grows to its full staffing requirement.
Key duties and responsibilities
- Manage a team of talented embedded software engineers primarily working in C/C++ for embedded multi-threaded and multi-processor applications;
- Participate in project planning and drive execution to meet project timelines and deliverables ensuring predictability and the meeting and setting of quality objectives.
- Lead and mentor the team covering a range of embedded technology areas; the team will work with languages from Assembly, C/C++ to C# in environments from a .NET compact framework to system on System-On-Chip development.
- It is expected that the manager will initially contribute directly to development and as such have experience in the above areas, and especially have strong previous design experience in inter-processor communications using event driven State Machines and message synchronization, device driver development on microcontrollers, such as Cortex-M, MSP430, Zilog, Atmel, etc. and strong knowledge of software-hardware interfaces, and in Real-time Operating systems
Required education and training
- Bachelor's degree in Science or Engineering. For example: Computer Science, Physics, Electrical Engineering, Biomedical Engineering, Cognitive Science or Mathematics. 8 years of relevant direct technical work experience and in addition a minimum of 5 years relevant management experience managing an embedded team.
- A minimum of 5 years' previous team management/leadership experience
- A minimum of 8 years previous product development experience, with direct experience of embedded development preferably with microcontrollers (such as, ARM Application and Cortex architecture) and software-hardware interfaces.
- Software design experience for multi-threaded and multi-processor applications.
- Knowledge in C/C++ and Assembly and in addition exposure to .NET C#, Compact Framework, ASP.NET.
- Good knowledge in electromechanical controls, sensors and actuators.
- Ability to plan and organise for a team
- Familiar with Configuration Management and Issue Tracking systems
- Excellent interpersonal communication skills
- Experience of working in a collaborative engineering environment
- Excellent analytical and report writing skills