Senior Software and Firmware Engineer

Acroname is expanding our software team, and is looking to hire an experienced firmware and software engineer with a GTD attitude. Our software and experience is a core to customers success by building upon our offerings to solve complex automation problems in manufacturing test automation, motion control, robotics research and distributed control systems.

The Senior Software Engineer role requires an experienced software engineer who can operate across the whole stack: low-level C firmware, high-level C++ and Python applications, build systems, software delivery systems, API architecture, system architecture, software documentation and customer support. If this begins to describe you, keep reading.

Key Skills:

  • understands magic is just sweat and hard work flavored with a bit of talent
  • despises all OSes equally, but insists on cross platform feature parity
  • hard wired muscle memory in any particular IDE/environment
  • but you aren't tied to a particular development environment or religion
  • reads C and C++ code and starts from what's there
  • recognizes the not-invented-here syndrome, but has been previously inoculated against it
  • recognizes the not-invented-by-me syndrome, but has been previously inoculated against it
  • recognizes that "import *" isn't always the best approach
  • not barring the above, knows when to refactor
  • writes maintainable and cross platform C, C++ and Python
  • loves developing public and internal APIs
  • able to architect large software and hardware systems
  • experience developing code generation and parser systems
  • experience with modern software development tools (e.g. git, gitlab, Jenkins, etc.)

What you'll do:

  • work on automation projects for external customers
  • software plaform architecture development
  • work with clients to accomplish their software project goals
  • develop complex forward and inverse kinematic solutions for complex autonomous systems
  • develop RESTful APIs and systems
  • implement TCPI/IP data communication
  • motor driver development and support
  • create, perform and present test acceptance results
  • join and be a significant contributing member of our software team
  • develop customer facing applications showcasing our products
  • work with customers to aid in integrating our products into their processes
  • develop embedded firmware for current and new products (mostly ARM based)
  • refine our compilation and documentation tools
  • maintain and develop internal software and tools
  • publish C, C++, Python application code written in multiple IDE environments and/or multiple OS's
  • develop and document interfaces and protocols

Key Traits:

  • BS or MS in Computer Science, Computer Engineering or Electrical Engineering
  • other degrees acceptable with relevant work experience
  • 5-10 years of production programming experience
  • if you just graduated college, this job isn't for you
  • seriously, this is not an entry level position
  • understands indeterminate does not mean put the pencil down
  • confidence in the understanding of metrology
  • willingness to jump in and solve any problem
  • able to travel for business, including international travel (<25%)
  • extremely self-driven, but knows when to ask questions
  • thinks outside the box unlike a docker container
  • sense of humor, we only do this because we want to
  • willingness to jump in and solve any problem
  • must be a US citizen (sorry. we work on US government contracts, so no options here.)

Bonus Points:

  • consumer product development experience
  • can point out electrical schematic errors to the hardware guy
  • experience with ARM microcontrollers
  • familiarity with web technologies including JavaScript, HTML, CSS
  • a wicked cool vimrc file
  • or remapped modifier key to relieve Emacs pinky
  • climb 5.13 or throws tires at people who do
  • wrote a better Arduino loader because the other one bugged you (it's just a Java app after all)
  • wrote a TCP/IP or BlueTooth stack from scratch
  • rebuilt your whole house because you wanted to buy the tools
  • built a Lichtenberg machine and still have all appendages mostly functional
  • customer site support experience

What You'll Get:

  • moderated glory
  • full benefits (and an RTD bus pass)
  • salary (duh)
  • potential stock grants

WWWWWH:

Who: Acroname, Inc.
What: awesome software and firmware for awesome products
When: immediate and permanent
Why: because you're awesome, we're awesome and together our products will be awesome
Where: Boulder, CO (Local candidates strongly preferred; relocation not paid)
How: Send your resume to jobs@acroname.com

More About Acroname:

Acroname operates a profitable business designing, manufacturing, and distributing custom hardware products used to test some of the world's most popular consumer devices. We are expanding our product offerings in the test automation space as well as other automation engineering markets. We make those same systems available to individual consumers and researchers. All of our customers count on the reliability, massive scalability and agility our products bring to their systems. The hardware, software, firmware, and documentation are instrumental in this trust, and we're looking to expand our software team.

While we take our products and customer needs seriously, we are a small and uniquely Boulder business. All of our coworkers have lives outside of work, and we pride ourselves on not taking things too seriously. Not to say we don't work hard; there are serious crunch times.

As a software engineer at Acroname, you'll join a small, quick-moving team building tools based on decades of experience; think of us as an old start-up. You get the freedom to move things where you think they should go while not starting from nothing. Your weekly work will include working on software contracting projects as various as web applications to robotics and algorithm development, adding features to embedded firmware, extending and documenting our protocols, maintaining or extending operational tools, writing GUI applications to demo products to our customers, holding our customer's hands in integrating our products into their systems, optimizing our production test software, consulting on new product hardware designs, working with the team to architect new product embedded firmware, improving our VM compiler, arguing over vi vs emacs vs vim vs Xcode. Or, just waiting for Eclipse to restart since it just crashed again.

We are a small company with a highly energetic work environment; more importantly than matching the skills above, you must fit into the groove of the Acroname-culture.

Add new comment

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.
CAPTCHA