Neural ID is a successful, mid-stage software company developing pattern recognition technology for use as both an enabling horizontal platform and an applied software product for vertical markets including retail consumer products, commercial products, health care, and security. The goals of the engineering team in particular include developing the most robust, highest quality, most scalable, best-in-class software technologies possible. In order to be successful in this ambitious endeavor the team strives to find the best software development talent available that can function equally well on the coding, quality, collaboration, and communication levels. The engineering team needs the services of a focused, experienced, software development engineer that can help take our company and its high ambitions to the next level of success. In a small company like Neural ID, every new hire is critical to its success and we are looking for only the best in class when considering key development positions.
This position is a critical hire in the Engineering group in that we are looking for a key contributor for software technologies that will impact all development projects across customers and markets. The key areas we are looking for include production quality, quality of results, software maturity, cross-platform compliance, performance, scalability, and maintainability. Our software products are deployed across the widest of platforms including embedded, stand-alone, and enterprise level systems. What this means for the software development team is to develop highly reusable and reconfigurable code that can run on any of several hardware systems with equal reliability and performance.
It is imperative that this individual have experience in modern commercial software development processes including customer specifications and requirements, breaking product goals into definable, task oriented assignments, high quality coding using internally developed standards, and high coverage rate testing. Neural ID is using agile development techniques today but moving towards a balanced approach to waterfall vs. agile development (Greenhopper) that allows software to be developed across parallel stakeholders including customers.
The individual will be responsible for the timely, high quality, and cost effective delivery of OEM software products and customized/value-added software applications with special emphasis on the product quality that meets or exceeds customer and corporate requirements. The candidate is expected to be able to define and implement within the development team the highest quality software modules and products. The individual is expected to be expert in the field of software algorithms and coding and be of sufficient experience to appreciate the roles of both art and science in developing the highest value software.
The ideal candidate should be a senior R&D software engineer with strong coding and testing experience in a scalable (successful startup) or scaled (medium-to-large) software organization that now delivers a variety of products to customers across multiple vertical markets. This hypothetical candidate should be of sufficient maturity and experience to understand the necessity for process-driven software development while maintaining the excitement and rewards of working together in a small, collaborative, team environment.
- Drive the overall product quality through an effective combination of collaboration, planning, code development, and testing to meet or exceed customer expectations.
- Develop a deep understanding of the CURE™ technology and functionality, influence the product architecture evolution and implementation, and build the highest quality software equity and products within the Neural ID engineering team.
- Leverage technical, analytical, systems, and programming skills to participate in architectural reviews, release planning, product functionality comparisons, code and implementation analyses, code generation, and hardware and software interoperability for cross-platform compliance to ensure a quality perspective in all aspects of product development, validation, deployment, and maintenance.
- Work closely with the rest of the product development team, sales, and support engineering to define, architect, develop, deliver, and continuously evolve the software development processes and process improvement activities of the engineering team.
- Assist in the development of scripts, processes, plans, and analyses to perform prioritized, automated and manual build and test operations. The developer is expected to take full ownership, and pride in that ownership, of all of their work products including planning, development, testing, and deployment.
- Provide effective risk management for timely development of software products while emphasizing continuous product quality improvement.
- Ensure effective coverage of all aspects of product and process quality including, but not limited to, robustness, correctness, usability, resilience, consistency, compatibility, compliance, availability, scalability, and performance.
- Ensure effective use of defect and feature request tracking system (JIRA) across the entire cross-functional organization.
- Maintain efficient and effective communications and collaboration between software development and test engineering teams.
- Assist in the problem resolution triages between QA and coding teams.
Professional Background – Required (preferred platforms in parentheses)
- Significant experience (5-8 years minimum) as a software development engineer in delivering high quality, quantifiable software solutions as a key code contributor to the software development team.
- Software development skills in C/C++ with an emphasis in object-oriented design, data structures, messaging protocols, multi-threaded and high performance coding, and the use of software algorithms to explore scientific/numerical analyses.
- Strong experience with software development and testing tools including commercial and self-developed utilities. Must have commercial grade, mission-critical, software development experience well above and beyond academic level programming.
- Cross-platform, multi-threaded, multi-bit width development and testing experience across Windows, Linux, and/or other UNIX or embedded OS variations.
- Experience with pre-requisite software development process tools including SCM (Perforce), Issue Tracking (JIRA), Code Coverage (Clover), test-driven frameworks (CppUnit, NUnit, JUnit), and office tools (Microsoft Office tools – Word, Excel, PowerPoint, Project, etc.)
- Analytical software experience wherein the developed product implements highly complex, numerical analysis algorithms in 1D (time domain) or 2D (image/vision) applications.
- Strong understanding of software product and development processes including robustness, usability, scalability, and performance.
- Strong analytical and general problem solving skills including abilities to break down problems into defined and tested components and logically work through systems problems.
- Excellent communications skills including both written and verbal communications, report generation, and executive staff summaries.
- Customer relationships skills including travel, communications, requirements gathering and negotiations.
Professional Background – Desired (preferred platforms in parentheses)
- 5+ years software development experience in C/C++ with some exposure to other languages.
- Software development skills in C#/Java/JNI.
- Experience in working with numerical analysis libraries such as OpenCV, Intel Integrated Performance Primitives, and Nvidia NPP.
- Experience with embedded software products in addition to application level software products.
- Experience with analytical software products such as Matlab, LabView, engineering tools, image processing, signal processing, waveform analysis, or other data-driven products.
- Experience with virtual machine platforms (VMWare) and their utilization in multi-host software development.
Personal Qualities – Desired
- Hands-on and operational with the ability to react quickly to changing business, product, and customer needs while maintaining a consistent goal of increasing the forward value of the work product.
- High energy but analytical personality. Driven without being reckless. An understanding of when to be an outgoing advocate and when to be a good listener.
- Strong problem solving skills.
- Cooperative, collaborative, team member willing to both educate and be educated. Looking for a peer, not arrogance or passivity.
- Creative enthusiasm that finds joy in the art of engineering and discovery. A thirst to understand the “why”, not just the “what” or “when”.
230 Twin Dolphin Drive
Redwood Shores, CA 94065
eric at neuralid.com