Job Description
About Recogni
Â
Artificial intelligence (AI) is transforming our world. It can perform cognitive functions that previously only humans could do, such as perceiving interactions across different environments with the ability to quickly learn and then solve complex problems. At Recogni we have innovative approaches to machine learning, high resolution imaging, perception processing, and high-performance computation with industry-leading low power efficiency. We're a well funded, fast-paced startup company with headquarters in San Jose, CA, and Munich, Germany; we also have many talented team members working remotely. We're at the leading edge of advancing the latest research and product improvements for Al inference solutions that will make Al even more useful for compelling new applications.
Â
About the role
Â
As a senior member of Recogni's software team, you will be responsible for implementing the software that runs inside a high-performance and low-power convolutional neural network accelerator ASIC that forms the core of the company's flagship perception module product for autonomous driving applications.Â
Â
Running in the ASIC, this software orchestrates the computational accelerators and system interfaces to form an end-to-end vision perception module that achieves record-breaking computational performance at low power, interfacing with an autonomous vehicle's central path planning system from multiple points on the vehicle. Your responsibilities will be wide-ranging and and run the gamut of full firmware lifecycle including design, development, debugging and ongoing sustaining engineering.
Â
Responsibilities
- Work as a principal technical contributor in the definition, design, implementation and verification of the embedded software of a high-performance AI-based camera and perception module for ADAS systems.
- Utilize formal design processes to develop embedded software that meets the high-reliability and functional safety requirements of the the perception module.
- Contribute to the selection, integration and debug of real-time operating systems (RTOS).
- Integrate (or develop where necessary) low-level I/O drivers (e.g. Automotive Ethernet, USB, GPIO, etc.).
- Implement cryptographic integrity checking, secure boot (with hard time-to-operational requirements) and over-the-air update lifecycle functionalities for the embedded software.
- Collaborate with hardware engineers designing application-specific integrated circuits (ASIC) in the selection of embedded CPU cores (e.g. ARM, RISC-V, etc.), as well as supporting functionality variants of those cores (e.g. MMU, MPU, VLIW vector units, etc.).
- Perform system bringup, debugging and testing.
- Perform requirements analysis and author high-level and detailed requirements.
- Troubleshoot software issues and fix defects.
- Write test specifications and integration tests.
- Architect and maintain automated software build flows, integrate with continuous integration (CI) systems, and author scripts and utilities.
Qualifications
- B.S. (M.S. preferred) in Computer Science, Electrical or Computer Engineering or a related field.
- 10+ years of experience developing software.
- Excellent proficiency in C/C++ programming coupled with a genuine passion for software development.
- Experience with low-level RTOSes (QNX, vxWorks, ThreadX, etc.) and developing device drivers for them.
- Experience with embedded development IDEs and debuggers (gdb, lldb, etc.) and JTAG-based debugging.
- Experience with embedded development tool-chains and cross-compilation methodologies.
- Experience with multiprocessor-based embedded systems.
- Experience with software architecture, development and testing best practices.
- Experience with automated software testing systems for embedded systems.
- Experience with with standard hardware blocks and protocols (MIPI, PCIe, USB, GPIO, I2C, SPI, UART, MMU, DMA, etc.).
- Some experience working with safety critical systems with exposure to DO-178C or ISO 26262 preferred, but is not a must.
- Demonstrable proficiency with test equipment relevant to embedded product development (JTAG, logic analyzers, scopes, etc.).
- Ability to comprehend hardware specs and schematics.
- Familiarity with version control systems (expertise in Git is strongly-preferred).
- Self-starter and highly-motivated to work in a dynamic start-up environment.
Â
Reasons to consider joining Recogni:
- Ground floor opportunity with the team; be part of shaping one of the most exciting new companies.
- Learning and development opportunities from a highly diverse and talented peer group, including experts in a wide range of fields, from Artificial Intelligence & Computer Vision to Systems & Device Engineering.
- Competitive benefits package including 401k, Medical+Dental+Vision+Life insurance, and Short+Long Term Disability coverage
- Perks including meals, snacks, drinks and us!
- Sharp, motivated co-workers in a fun office environment
- Employee Stock Plan
- Flexible work hours & generous PTO policy
Â
Â
Recogni's culture was built on the following values that are equally important to us as business:
- Put people first. We only succeed when our people succeed.
- Ethics and integrity always; Being open, honest, and respectful of everyone.
- Think Big. Be ambitious and have audacious goals.
- Aim for excellence. Quality and excellence count in everything we do.
- Own it and get it done. Results matter!
- Make Each Person Better together than they would be as an individual.
- Embrace each others’ differences.
- Embrace that there will be differences.
Recogni is an equal opportunity employer. We believe that a diverse team is better at tackling complex problems and coming up with innovative solutions. All qualified applicants will receive consideration for employment without regard to age, color, gender identity or expression, marital status, national origin, disability, protected veteran status, race, religion, pregnancy, sexual orientation, or any other characteristic protected by applicable laws, regulations and ordinances.
A note to Recruitment Agencies: Please don’t reach out to Recogni employees or leaders about our roles -- we’ve got it covered. We don’t accept unsolicited agency resumes and we are not responsible for any fees related to unsolicited resumes. Thank you for your understanding.
Date Posted
03/21/2024
Views
19
Similar Jobs
Senior Front-End Software Engineer - Percipient.ai
Views in the last 30 days - 0
Percipientai founded in 2017 is a cuttingedge technology company specializing in Computer Vision Artificial Intelligence and Deep Learning They develo...
View DetailsPrincipal Software Engineer (Prisma Access) - Palo Alto Networks
Views in the last 30 days - 0
Palo Alto Networks is a cybersecurity company committed to protecting the digital way of life They are seeking a Principal Software Engineer to build ...
View DetailsPrincipal Engineer Software (Full Stack Developer) - Palo Alto Networks
Views in the last 30 days - 0
Palo Alto Networks is seeking a Senior FullStack Engineer to develop and maintain highperformance web applications collaborating with crossfunctional ...
View DetailsStaff Flight Test Engineer - Wisk
Views in the last 30 days - 0
Wisk Aero is seeking a Staff Flight Test Engineer to join their team in Hollister CA The role involves ensuring safe and efficient flight testing and ...
View DetailsSenior Developer, Data Engineer - Tarana Wireless, Inc.
Views in the last 30 days - 0
Tarana is seeking a Senior DeveloperData Engineer with 5 years of experience in building largescale data pipelines The role involves designing buildin...
View DetailsStaff Engineer, System Design Verification Engineering - Western Digital
Views in the last 30 days - 0
Western Digital is seeking a validation engineer to define and track test plans characterize and optimize SSDs and lead bug review meetings The ideal ...
View Details