Software Development Engineer
-
Software Development Engineer: 120 -150 base + Bonus and Stock -Contact: Ronald H Anderson
Anderson & McGinley- Retained Executive Search: ron@andersonmcginley.com Mobile: 415-378-1955
WWW.ANDERSONMCGINLEY.COMResponsibilities
- 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 companies 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.
[EDIT: Split into separate thread; fixed list markup, Volker]