Senior Software Engineer, Platform
At Plenty, we’re on a mission to give people in local communities everywhere access to the freshest, most amazing tasting produce possible. And to do so in a way that’s better for the planet.
The people and teams who make up Plenty are at the core of how we do that. We are an ag-tech company looking for a Senior Software Engineer to join the Platform team who will architect, implement and maintain Plenty's backend systems and infrastructure. You will be a foundational member of the platform team who builds and manages critical software and data systems used across the organization. You will identify needs, collect requirements, and build and test systems and infrastructure used company-wide. You will contribute to the advanced automation in Plenty's production lines while also amplifying the impacts of Application Engineers, Data Scientists, Machine Learning Engineers, Manufacturing Engineers, and Production Engineers across multiple organizations.
This is a technical role responsible for building sophisticated backend systems and software infrastructure for operating the farm. The ideal candidate takes pride in her/his work and possesses strong technical ability, the capacity to translate fuzzy requirements into actionable technical solutions, the capacity to explain solutions to people with other domain expertise, and an attention to detail. She/he appreciates an environment where superior work is encouraged, noticed, and rewarded and where individuals carry significant responsibility. The ideal candidate is uncommonly self-motivated and feels tremendous ownership over outcomes regardless of where in the organization solutions may lie. The ideal candidate will collaborate with engineers, product managers and project managers within the software engineering team and across other cross functional teams.
Type of Role
What You'll Do
As a Senior Software Engineer you will be responsible for designing and implementing Backend components for the FarmOS Execution System.
Help identify opportunities where production data can be highly leveraged to improve production yields, efficiencies, and quality
Utilize Object-oriented design, domain driven design and analysis skills to design and implement backend-end software.
Maintain a rigorous standard for deploying clean, tested code in a highly collaborative environment with rapid iteration
Create tooling, automation, and documentation to facilitate others in deploying, operating, and extending your code
Design and implement a highly performant distributed system to orchestrate operations in the farm with an emphasis on performance, resiliency and scalability.
Manage and maintain evolving data systems for automation equipment logs and logic
Support, guide, and lead the data community within the company
What We're Looking For
BS or MS in computer science, engineering, mathematics, or equivalent
5 - 8 years of relevant experience
Exemplary verbal, visual, and written communication skills
Strong proficiency in Java. Knowledge of python is a plus.
Strong proficiency with Git, experience with GitHub a plus
Experience managing configuration in a public cloud (AWS, GCP, Azure, etc.)
Experience with CI/CD workflows and tools
Experience with build tools such as gradle, maven
Experience working with a diverse set of databases, such as Postgres, DynamoDB, Elasticsearch, and Cassandra is a plus.
Experience with big data technologies such as Spark, Kafka, Akka, MapReduce, and Athena is a plus
Strong background in system architectures, high-performance computing, and distributed systems.
Ability to design and implement RESTful microservices based on user-research
You are experienced using technologies in several of the following areas: microservices, various IPC models, Java, Spring or Guice, cloud-based deployments.
Experience building monitoring tools and continuous integration pipelines a plus
Ability to work under pressure while managing competing demands and tight deadlines
Experience supporting mission-critical systems
Set priorities and work efficiently in a fast-paced environment
Demonstrated ability to deliver results on time with high quality and attention to detail
Strong interpersonal, communication and collaborative skills to work effectively within and across teams.
Deep belief in the mission of Plenty.
Plenty is here to change the way people eat, making extraordinary flavor and nutrition more available in a way that's better for people and the planet. We build farms that can put craveable flavor first while delivering exceptional yields. And our produce is always pesticide-free and grown using less than 1% of the land and 5% of the water of outdoor farming.