Golang / Go Job: Systems Engineer


Systems Engineer at Spin

🇺🇸 United States › California › San Francisco Or Remote (US)

About the company
Spin operates electric scooters in cities and campuses nationwide, bringing sustainable last-mile mobility solutions to diverse communities. Recognized for its consistent cooperation and collaboration with cities, Spin partners closely with transportation planners, elected officials, community groups, and university administrators to bring stationless mobility options to streets in a responsible and carefully orchestrated manner.

Based in San Francisco, Spin is a diverse team of engineers, designers, urban planners, policymakers, lawyers and operators with experience from Y Combinator, Lyft, Uber, local and federal government, and the transportation advocacy world. Spin was known for launching the first stationless mobility program in Seattle, and has since expanded to become the exclusive electric scooter partner in mid-sized cities like Coral Gables, Florida and Lexington, Kentucky, and one of a few permitted scooter operators in large cities like Denver, Detroit, and Washington, D.C. The team embeds in cities and neighborhoods to understand their specific transportation needs, and hires locally from the community.

Spin is expanding quickly and looking for top-tier talent to help us bring affordable and accessible transportation options to cities and define what future safe streets will look like.

Do they allow remote work?
Remote work is possible, see the description below for more information.

Job description
We are looking for infrastructure system engineers to help us of designing and maintaining a fault tolerant system that handles thousands of connected IoT devices and mobile apps at scale.

Our backend stack is primarily Ruby, Rails, Go, Javascript, PostgreSQL and Redis. We're currently hosted on Heroku and AWS. We run tests on CircleCI.

You’d help us build our next generation IoT infrastructure as we scale out towards a more fault tolerant and distributed system.

Our Team:

Our engineering team consists of engineers that are passionate about creating finely polished and intuitive experiences and, at the same time, obsess over performance and reliability of what we build. We challenge the status quo and strive towards finding the best way to solve problems.

We promote being a more well rounded engineer by working on different parts of the engineering stack. We also work in very small groups to keep processes and overhead low, so we have a lot of trust and accountability to perform the work required to build the best product.

Skills & requirements

-Collaborate with Rails backend developers to develop a reliable communication channel between Rails and Go services

-Setup and manage monitoring tools for IoT services

-Write command line tools Go to support external operational work

-Implement integration and unit tests for Go services

-Write and improve parsers/lexers for IoT device protocols

-Design and implement a fault-tolerant, distributed transaction system for managing a fleet of IOT devices


-Minimum 2 years experience in the design & implementation highly concurrent Go networking services

-Minimum 2 years experience in the design & implementation of highly performant network-level lexers & parsers

-Minimum 2 years experience working on a mixture of strong & eventually consistent systems

-Understanding of the CAP theorem and its manifestations in modern engineering environments

-Experience working with a team of people to support a product, end-to-end

-Understanding of relational database systems, schema design and consistency guarantees

-Good to have: non-relational datastores like Kafka, Cassandra, or etcd, and understand use cases for them

-Good to have: Postgresql experience in a high traffic environment

Apply now!  
About Golangprojects