Sr. Software Engineer

Location: Ann Arbor, MI

Department: R&D

Type: Full Time

Min. Experience: Mid Level

NovoDynamics, a cutting-edge software technology company, uses its advanced pattern recognition and predictive analytics capabilities to transform its customers’ data into actionable information and insights.  Our software solutions are utilized across a variety of industries by prestigious commercial, government and academic customers located around the world.

We are looking for exceptional people to join our fast growing company, which is located at our cool new facility in downtown Ann Arbor.  Want to help us use our technology to make a positive difference in the world?  We want to hear from you.

We want you to have an area of expertise, but you should also be willing and able to ramp up quickly and do great work in a broad range of development areas (learning new APIs, back end vs. front end, desktop vs. web vs. mobile, C++ vs. Java vs. Python, etc.).

Primary responsibilities:
• Design, develop and maintain our C++ core engine and Python training/testing code on your own and in cooperation with the team.  This will include lots of machine learning, image processing, and public-facing API code plus distributed computing.
• Do scientist!  Plan and execute large-scale tests of robustness and accuracy.  We make empirical, data-driven decisions about what improves our software and what doesn’t.
• Try out new tech to keep us on the cutting edge.  (EC2, C++11, LLVM, open source libs, etc.)

Our ideal candidate:
• You’re a smart, versatile, hard-working, “get it done” person.
• You know C++ really well, plus Python or a similar language.
• You can understand complex algorithms and translate them quickly into well factored, maintainable, leak-proof, crash-proof code with accompanying automated tests.
• You are comfortable in a cross-platform (Windows/Linux) coding environment using lots of open source, distributed source control, issue tracking, continuous integration and automated testing.
• You understand advanced data structures, algorithms and time complexity.
• You have experience architecting large systems.
• You’re the person the rest of the team goes to first when they have a question.
• You iterate quickly in your development, pushing solid new code multiple times per week.
• You like pair programming, at least once in a while.
• You will go to any lengths to help your teammates solve problems or learn to use new tools.
• You believe in OSS and have worked with it many times.
• You leave old code better than it was before you touched it, including improving test coverage.

B-features (“Nice to have”):
• Background in machine learning and/or image processing.
• Significant cloud/web development experience.  (EC2, REST services, jQuery, etc.)
• Fluency in a Middle Eastern or Asian language.
• You contribute to open source, write a smart blog, or you’ve published technical papers.

Expect to write code during – and possible before – your interview.

Forward this Position
Recipient email address (one)
Your name
Your email address
Enter a message (optional)
Apply for this Position
* Required fields
First name*
Last name*
Email address*
Phone number*

Attach resume ( .pdf, .doc, .docx ) or paste resume

Paste your resume here or attach resume file

Cover Letter
In 150 characters or fewer, tell us what makes you unique. Try to be creative and say something that will catch our eye!
Human Check*