Our software engineering team collects, process, transform and analyze vast amounts of clickstream, agronomic and geospatial data. We build the infrastructure to get different datasets from within and outside climate into our data lake and build scalable pipelines that feed data into our data warehouse. If you are a skilled, creative, collaborative software engineer and leader who wants to have a meaningful impact on the world, we would love to engage with you about a role here at The Climate Corporation.
What You Will Do:
- Design and implement REST APIs and data processing pipelines for mobile, web and 3rd party integrations
- Design and implement highly scalable data-intensive processing systems
- Actively participate in the design and code review process across the team.
- Produce high quality code with an emphasis on software craftsmanship.
- Collaborate with product, data scientist, and engineering on the next generation of the industry-leading agriculture platform
- Work with cutting edge open source platforms such as Hadoop, Yarn, Flink, Spark, etc.
- Ensure our codebase is continuously deliverable and deployable.
- Bachelor’s degree or above in computer science or a related field
- Software engineering work experience using a functional or object oriented language (Java, Scala, etc)
- Experience building scalable backend services (REST APIs, microservices, designing and implementing efficient data processing algorithms, messaging paradigms, middleware, persistent store)
- Experience working with distributed platforms such as Hadoop, Flink, Spark, Kafka etc.
- Experience working with AWS or other public Cloud platforms
- Solid knowledge of software development methodologies and best practices
- At least 6 years experience in production with deployment in large cloud-based distributed environments
- At least 4 years experience in production working with distributed platforms such as Hadoop, Flink, Spark, Kafka etc.
- Knowledge of functional programming (Strong Plus)
- Experience with dynamic language (Python) (Desired)
- Experience with compiled JVM language (Java, Scala) (Strong Plus)
- Experience building robust backend services and REST APIs
- Experience with relational and non-relational databases and persistence store
- Experience with Amazon Web Services (EC2, S3, RDS, SQS, etc.) (Strong Plus)
- Experience with messaging paradigms and middlewares. (SQS, JMS etc)
- Experience with open source schedulers (Airflow, Oozie etc)
- Experience with AWS or similar distributed architecture