Software Algorithm Engineer

UltraSense Systems is looking for a strong Software Algorithm Engineer with excellent knowledge and hands-on experience in algorithm development to join our team. Main responsibilities include development of C-Models along with associated datasets, converting the model into an embedded solution, development and debugging on Linux, Android and Qualcomm based systems.
Major Responsibilities
• Architect and develop algorithms for button replacement in mobile, automotive and IoT products.
• Define the touch subsystem algorithm pipeline, develop algorithms, deliver C-models, along with golden datasets for integration into embedded systems.
• Develop signal processing algorithms in real-world or comparable settings
• Work with the hardware and architecture team to explore optimized hardware architecture to achieve the best efficiency
• Provide direct support to customers and partners with the design, development and debug of reference design S/W related issues and helping to customize software.
Minimum Qualifications
• Experience with small signal recovery techniques in noisy environments is a must
• Experience in developing and optimizing algorithms to run on DSP and microprocessors is a must
• Candidate should have strong programming fundamentals using C/C++/Java and at least one assembly language.
• Experience with embedded software development and assembly language programming
• SOC – ARM/RISC and 8051 architectures and QCOM ADSP and SLPI platforms required
• Android platform, HAL and Framework is a must; experience integrating into Android platforms for mobile products, analyze and fix issues to support product delivery. Extensive experience on working with the ASP including Framework enhancement and customization
• Strong understanding and practical experience with Android Framework and Android application development
• Experience in mass-produced electronics (mobile and consumer preferred); must be able to identify products taken to production
• Factory volume production experience and qualification is a plus
• 10+ years of experience in writing embedded software or kernel level code, including drivers, BSP programming and hardware adaptations.
• 4+ years developing with Android SDK in a production environment
• Must be ready to travel to customer sites for integration and bring-up
Preferred Qualifications
• BS or MS in Computer Science, Computer Engineering, Electrical Engineering or related field.
• Experience with sensing hardware (design and calibration) is a plus
• Experience in using Debugging tools such as JTAG, Trace32 and oscilloscope/Logical Analyzer.
• Experience in Analyzing the Kernel crash dumps and Systrace dumps.
• Contributions to open source projects (pls provide website/git-hub links)
• Experience working full-stack
Send resumes to