Summary:
A highly skilled Firmware Engineer is sought to join our team, working on various projects and expanding their exposure with embedded firmware.
The ideal candidate will have a demonstrated interest in firmware development and design, and thrive on the challenges of learning new technologies and working as part of a highly skilled and project-oriented team.
About the Role
This role is an excellent career opportunity for anyone looking to work on diverse projects, develop expertise in firmware development, and advance their skills in software engineering.
The successful candidate will work collaboratively within a cross-functional agile team to develop features, using strict development methodologies including code reuse, maintainability, testing, and documentation.
The ideal candidate will have strong coding skills, excellent problem-solving skills, and the ability to communicate technical concepts to non-technical people.
Responsibilities
* Design – collaborate with Product Management and Project Management on new product design architecture.
* Development – take designs and make them happen.
* Writing and testing code using strict development methodologies including code reuse, maintainability, testing, and documentation.
* Building high volume platforms - linking millions of users worldwide at the same time.
* Quality Assurance – developing test cases in line with best practice methodology.
Requirements
* 3-5+ years Linux/C programming skills experience required along with a relevant 3rd level qualification.
* Proven experience developing and debugging multi-threaded systems.
* Understanding of UNIX/Linux operating systems and programming environments.
* Strong coding skills with proven ability to write well-documented, maintainable, and testable code.
* Excellent problem-solving skills and the ability to demonstrate logical troubleshooting steps when working on software bugs.
* A genuine passion and interest in technology and software development with a thorough knowledge of best practices and new technologies.
* Self-management skills, particularly in respect to prioritization and execution.
* Detail-oriented individual with the ability to rapidly learn and take advantage of new concepts, business models, and technologies.
* Ability to communicate technical concepts to non-technical people.
Please note that this job description is not exhaustive and may be subject to change based on the needs of the company.