Arch Systems is seeking a Senior Software Engineer to join our rapidly scaling team and develop our factory data collection and processing applications.

Started by Stanford Engineering PhDs and grown out of non-profit work in Africa, Arch is a venture-backed company working with the world’s largest electronics manufacturers. We combine rich data from all machines, new and legacy, to drive real time and predictive analytics transforming manufacturing efficiency and how we work.

We are looking for talented and driven people who seek a lasting impact both in transforming manufacturing operations as well as making critical industries more efficient, connected, and sustainable. Come join our diverse and passionate team!


Compensation will be determined for a Senior Software Engineer at a Series A stage technology startup based on experience and location. We benchmark our compensation against high cost of living/market rates and use a compensation formula that includes a location factor to determine total target compensation as it compares to a high cost of living/market area. At Arch, total target compensation is comprised of base salary, a completion bonus, and a performance bonus.

Employees in the US can expect generous benefits for themselves and their dependents as well as equity in the company.

Applicants outside the US will be considered to become employees of one of our trusted partners and will receive benefits through them as well as NQSOs from Arch Systems

Remote Equal

Since before COVID-19, Arch has operated as a remote-equal team and we welcome candidates from anywhere in the world to apply. While we have team members in over 5 countries across various time zones, for this role our preference is candidates working in PST +/- 3 hours. US applicants must be authorized to work in the US. We are unable to sponsor a Visa at this time.

About the Role

You’ll be a Senior Software Engineer on our ArchFX Broker team. This team delivers the on-premise message processing and streaming analytics infrastructure, which is a factory machine data processing system used by the top contract manufacturers to collect and analyze data from their advanced robotic factory machines around the world.

The ArchFX Broker receives and processes millions of streaming IOT data points per day from thousands of advanced machines in factories and merges it with a virtual “factory map” containing metadata about the physical location of each machine in the factory and the configuration of factory lines.

The ArchFX Broker also serves its streaming data to many downstream consumers both in and outside of the ArchFX system - including data lake archives, cloud applications, and live dashboards.

We’re seeking someone to drive the evolution and growth of these core parts of our ArchFX Broker product. This is a backend, not frontend engineering role. It is a mid-level IC position where you will be owning complex engineering features and projects, ensuring technical excellence, and growing them to adapt and meet new use cases. You will be supported by world class domain experts who deeply understand electronics factories and will be centrally involved in “categorizing and making understandable” the machine data that is powering Industry 4.0, the next industrial revolution in electronics manufacturing.

About the Stack

The ArchFX Broker product is primarily a set of platform components (primarily rabbitMQ and Django) and Python worker applications that pipeline and process data. We develop a core library using Python to support streaming analytics, dashboards for data consumption with InfluxQL and Flux, and sometimes external connectors using a language dictated by the API we are communicating with. We deploy our software to various factory machines, and send machine data to our on-premise or cloud-based streaming platform.

This high volume machine data is routed through processing stages and sent to at-rest data stores along the way. In stream processing, we merge the data with low-volume factory mapping metadata to construct machine-oriented data streams. We get this data to the customer in many ways, one of which is via dashboards using Grafana on top of InfluxDB. Our products are delivered as SAAS, primarily with individual on-premise docker container sets for large enterprise customers with a rapid delivery pipeline (approaching continuous deployment).

In this role your general responsibilities will be:

  • Gaining a deep understanding of our problem domain (machine data analytics in the electronics industry) to be able to propose technical solutions to complex challenges that work at scale in an industrial context
  • Ensuring that our products continue to maintain high levels of technical excellence via best practices of testing, CI/CD, code review and security architecture
  • Understanding and decomposing feature requirements into units of work that can be implemented efficiently
  • Contributing core features, primarily authored in Python
  • Understanding machine vendor protocols and implementing support for obtaining machine data (e.g. odbc, C# API, AMQP-based, etc.)
  • Expanding our Python libraries to incorporate new streaming analytic capabilities for standard machine "classes"

To be successful in this role, we think that you need:

  • Knowledge of streaming processing platforms (technologies such as rabbitMQ, kafka)
  • Experience developing and shipping backend data streaming applications, ideally with Python expertise
  • Understanding of complex data streaming models - simplifying complexity while exposing the right level of flexibility
  • A firm grasp of containers and using docker to ship software
  • Ability to understand and query time series data structures

Other skills that may help you in this role, but are not required:

  • A track record of delivering software to large industrial customers.
  • Experience with time series data visualization, and expertise in how to work with IoT time series data in particular.
  • Desire to work on a mix of modern software programs and legacy systems
  • Experience working at small, but growing, startups.

How we will support you:

  • We have an ambitious and clear vision of how you can be a part of transforming the manufacturing supply chain and building next generation IoT technology.
  • We provide a Learning & Development budget to support your professional growth.
  • You are trusted in your ability to do your best work when and where you want and to communicate this with your team. This role is fully remote.
  • Time off is flexible - take the time you need, including an end-of-year break. We track PTO only to be able to check-in with Arch-itects if they aren’t using the time available to them and work with you to figure out getting the breaks you need.
  • We value a culture of diversity of thought and background with many languages and nationalities on the team.

Resumes must be submitted in English

We encourage interested and enthusiastic applicants to apply and not allow imposter syndrome to self-select out of an opportunity. We believe in hiring people as their full and authentic selves, allowing them to utilize their strengths and then helping them to learn, grow, and add to those strengths