Embedded Software Engineering Manager
Goodix -
Sheraton, CairoPosted 5 years ago27Applicants for1 open position
- 11Viewed
- 0In Consideration
- 7Not Selected
Job Details
Experience Needed:
Career Level:
Education Level:
Salary:
Job Categories:
Skills And Tools:
Job Description
- To plan, lead and manage system software, embedded software and firmware design and development projects
- Manage the embedded software design team including mentoring its junior members
- Responsible for all aspects of software and firmware design and development to meet product requirements from the initial concept, architecture and specification all the way through to the final verification
- Responsible for co-architecting the software-hardware partitioning with the digital design team
- Responsible for all phases of the design cycle (requirements gathering, specification, modeling, coding, verification, building, releasing, code and release maintenance, lab testing, support and documentation).
- Plan, lead and execute incremental updates and maintenance of existing software and firmware designs, test systems, and supporting environments.
- Plan, conduct and contribute to design reviews, provide input to characterization and qualification test systems, and deliver the software needed for other activities such as FPGA emulation, and system simulators
- Work closely with digital and analog design, VLSI, System, production, applications, and platform teams to develop and optimize the chip functionality and performance
- Contribute with his team to lab testing and debugging the design all the way from first silicon to productization
- Work with the applications engineers to provide adequate training and help address customer issues
Job Requirements
Basic Requirements
- University degree in Electronics or Computer Engineering
- Minimum 12-13 years of embedded software design, development and management experience
- Experience building, growing and managing large teams is a strong plus
- Excellent command of English (verbal and written)
- Strong communication and interpersonal skills
- Highly motivated and independently driven with a Can-Do attitude
- Having strong project management skills is a must
- Ability to work with global, cross-functional teams
- Excellent understanding of best-in-practice software development such as agile; TDD and CI.
- Ability to derive software architecture and design from system requirements using formal specification methods
- Excellent knowledge and experience of software industry norms, practices and processes (e.g., configuration management tools, issue tracking, revision control, ..) and having the discipline to enforce their use
- Experience in ARM based architectures and platforms, AMBA bus variants, boot loaders and OTA FW updates is a must
- Excellent knowledge of processor memory hierarchy, memory type selection and sizing, caching and memory management concepts and practices
- Experience with communication buses such as I2C, SPI, SDIO and common peripherals
- Working knowledge in Linux drivers and SDK development is a must
- Experience in C and its standards such as C90, C99 and C11, Assembly, multithreaded programming and RTOS
- Experience in TCPIP and socket programming
- Hands-on experience with debugging hardware issues using scopes, logic analyzers and JTAG debuggers with good analytical and debugging skills
Additional qualifications
- Experience with digital design or interfacing with the digital design team is a strong plus
- Experience with DSP algorithms, image and video coding, wired and wireless communications systems concepts and building blocks is a strong plus.
- Working knowledge of Windows and Linux application development is a strong plus
- Working knowledge of PCB design concepts and board bring-up is a plus
Featured Jobs
Similar Jobs
- Scrum MasterFawry for Banking Technology and Electronic Payments S.A.E - 6th of October, Giza1 day ago