Senior Software Engineer

Posted Apr 13

Help define the next generation of hardware development by building a common interface layer for hardware designs, and turn opaque binary files into open, scriptable, data.

AllSpice is building agile development tools for hardware designers, including a git-friendly translation layer and automated CI/CD test framework for native circuit designs (think GitHub for electronics). We are the only company helping accelerate time to market for hardware products by focusing on the hardware development and release process.

We need you to help us improve our parsing engine for electronics design files so that we can automate electronics design review, release, and documentation, enabling a dev ops system the software industry has benefited from for the last decade.

Our stack

  • rust back-end parsing layer for ECAD (electrical computer aided design) files
  • intermediate data is saved in json schema and exported to svg for rendering by the front-end
  • nom for binary parsing and Criterion for benchmarking

About the role

This is a high-impact role that comes with lots of autonomy and requires a self-driven, collaborative person. You will be focused on the input parsing layer, and should be able to:

  • understand and develop low-level backend architecture
  • develop and manage a schema for electronics design data
  • understand performance tradeoffs of alternate algorithms and data-structures
  • reverse engineer and comprehend methods for storing binary-encoded data
  • identify proper profiling and performance measurements to understand and address bottlenecks
  • test solutions across the stack from file input to svg rendered output
  • propose options for parallelization and multithreading

Example Projects

  • improve runtime of existing parsing engine, explore:
  • caching
  • trading out key libraries
  • exploring different languages
  • parallelization
  • compress and optimize svg outputs for improved rendering
  • increase support for additional ECAD (electronics CAD) design files
  • standardize and document intermediate JSON format
  • build api to process JSON format

Relevant Skills

You don’t necessarily have to be proficient in all of these, but the more you know the better:

  • lexical analysis, and parsing of recursive data-structures
  • outstanding written communication skills and good verbal communication skills
  • hands-on experience with CI/CD, e.g. testing and deploying
  • hex editors
  • svg file format
  • CSS selectors (for rendering designs)
  • algorithms and data-structures
  • hardware/CAD experience (nice to have, but not essential)

This is a remote-first role. However, we have flex offices in Boston, MA and San Fransisco, CA. You are generally expected to be available between 1pm and 5pm EST for any team meetings and/or discussions, otherwise, work hours are flexible.

Benefits

Supportive and smart colleagues, flexible work, opportunity to make a big impact, competitive salary & equity, health, dental, vision, generous PTO, home office stipend.

To Apply

Email jobs@allspice.io with “Backend Engineer” in the title and a copy of your resume and/or relevant work.