Distributed Systems Engineer

About us
Artificial was hatched from the minds of two Playground.Global founders with the aspiration to meld the best of both robotics and the core technologies at the heart of the Internet.  We believe this combination of hardware and software will accelerate productivity in life sciences because of the critical need for rapid innovation, flexible automation, dynamic scheduling, and a clear opportunity for more robots and artificial intelligence.

Our team values the positive purpose of our work and are motivated by our love of technology and the impact we see as possible within the intersection of robotics and life science.  We measure our success through the day-to-day journey of consistent high-quality execution and progress towards our vision to deliver products that delight our customers and help improve the world.

Our founders bring decades of experience in creating powerful teams, platforms, and products for technology in general and cyber-physical systems and robots in particular.  They have served in senior leadership or founding roles at KUKA Robotics, Microsoft, and Udacity.

In addition to the opportunity to work on a wide variety of worthy technical and business challenges, we offer competitive compensation, stock options, a generous health plan, a 401k plan, flexible vacation, dog-friendly offices, and robots working to improve all of our lives. Our teams are located in Palo Alto and Austin.  The Palo Alto site is a short walk from Caltrain, has an excellent on-site kitchen and lots of roaming robots.  The Austin team is small, but growing and the site selection is in progress.  

About the role

Artificial is looking for a software engineer with distributed systems experience.  You will help design and build our platform to connect, monitor, and maintain fleets of autonomous and automated devices.  

About you
  • Extensive experience developing products involving concurrency, synchronization, and failure recovery
  • Knowledgeable of the practical trade-offs of distributed systems. Please respond exactly once.
  • Excited about the challenges of working with physical devices in the real world
  • Sound security fundamentals
  • Comfort defining goals and roadmaps for execution in an ambiguous environment 
  • Very comfortable developing in a Linux environment

You have
  • Extensive experience delivery and maintaining products involving distributed systems challenges
  • Knowledge of messaging and serialization formats: shared memory, sockets, RabbitMQ, ØMQ, gRPC, HTTP, Websockets, WebRTC, MQTT, JSON, BSON, CBOR, XML, msgpack, protobuf, should all sound familiar
  • Solid grasp of local and distributed data management and experience with flat-file, schema'd and schema-less datastores, and data pipelines
  • Mastery of Python and/or C++1x is preferred, interest in Erlang/Elixer, Go, Scala is helpful
  • A degree or study in software engineering or computer science is preferred, but equivalent experience is welcome.

Artificial is an Equal Opportunity Employer

Want to apply later?

Type your email address below to receive a reminder

Apply to Job

ErrorRequired field
ErrorRequired field
ErrorRequired field
ErrorRequired field
ErrorRequired field