Engineer II
About the Role
The world's farmers make high-stakes decisions every season — and the platforms built by Digital Farming Solutions Engineering are what makes those decisions smarter. As an Engineer II, your role is to ensure those platforms are architended for scale, reliability, and the demands of AI and machine learning at a global level. You will design, develop, test, and maintain software applications that meet user needs and business requirements. You'll write clean, efficient code and collaborate with cross-functional teams to gather requirements, troubleshoot issues, and implement enhancements. You will apply best practices in software development, including version control and agile methodologies, to ensure high-quality deliverables. You will also participate in code reviews and contribute to documentation, fostering a collaborative environment that supports continuous improvement and innovation in software solutions.
Responsibilities
- Work in a collaborative atmosphere to create solutions to complex problems with cross-functional teams to understand requirements and translate them into technical solutions.
- Actively participate in the design and code review process across the team.
- Produce high quality code with an emphasis on software craftsmanship.
- Bring your strong sense of customer passion and ownership to make a difference for the world's farmers.
- Work with data ranging from on farm collected precision agriculture data to remote sensed satellite imagery.
- Implement efficient algorithms and services for diverse and challenging precision agriculture applications.
- Build your knowledge and contribute your ideas through interactive product design sessions, hackathons, and on-farm opportunities.
Qualifications
Required
- BS or equivalent in Computer Science or related technical field.
- 2+ years of hands-on experience in software development.
- Strong experience with Computer Science fundamentals, including data structures and algorithms.
- Skilled in SDLC (software development lifecycle) processes and experience with agile and iterative development approaches.
- Experience building highly scalable microservices and data pipelines.
- Experience with at least one public cloud platform.
- Experience with containerization technologies (e.g., Docker, Kubernetes).
- Experienced with version control systems (e.g., Git) and continuous delivery tools and techniques.
- Strong ability to quickly learn new skills and technologies.
Preferred
- Experience with developing cloud based microservices and data pipelines using container technologies (e.g., Docker).
- Experience with build/packaging tools (e.g., Maven, Gradle, NPM, Yarn).
- Excellent written and verbal communication, presentation, and listening skills.
- Experience with relational and non-relational data stores including hands on experience with SQL.
- Experience with messaging paradigms and middleware (SQS, RabbitMQ, etc.).
Pay
Employees can expect to be paid a salary of approximately $90k-135k. Additional compensation may include a bonus or incentive program (if relevant).
Benefits
Additional benefits include health care, vision, dental, retirement, PTO, sick leave, etc.