What are the responsibilities and job description for the Firmware Software Engineer - Display position at SGS Consulting?
Job Details
Summary:
- The main function of a firmware software engineer is to apply the principles of computer science and mathematical analysis to the design, development, testing, and evaluation of the software and systems that make computers work.
- A typical firmware software engineer designs, develops and tests operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific and general computing applications.
Job Responsibilities:
- Develop high quality code using the C and C programming languages for embedded environments, with portability to various processors and platforms
- Develop optimized firmware for the Graphics and Display pipelines to support the product usecases
- Work with internal teams and vendors to improve and tailor existing firmware, device drivers, stack and applications to project needs
- Debug issues across the software stack including hardware functionality and develop quick workarounds to time-critical issues and provide long term solutions
- Writing new tests and maintaining existing tests including unit tests, manual and CI automation
Skills and Experience:
- 6 years of industry experience developing and testing low level firmware for embedded systems
- Solid programming skills using C and C , and experience developing production code and test applications
- Experience with RTOS and developing multi-threaded applications
- Expert knowledge of the full software development lifecycle: from business/systems analysis, through requirements gathering and functional specification authoring, to development, testing and delivery.
- Experience with CI/CD development tools and processes
- Scripting skills using Python or other languages for developing simple utilities and test automation
- Knowledge of AR/VR technologies and/or basic understanding of Graphics and Display systems is a plus
- Expert problem-solving skills to troubleshoot issues and make system changes as needed to resolve issues
- Expert ability to work independently and manage one s time
- Strong verbal, written communication skills and interpersonal skills
Education:
- Bachelor's degree in computer science, software engineering or relevant field required.
Must-Have Skills:
- 6 years of industry experience developing and testing low level firmware for embedded systems
- 8 years of solid programming skills using C and C , and experience developing production code and test applications
- Experience with RTOS and developing multi-threaded applications. Expert knowledge of the full software development lifecycle
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.