Location: Peoria, IL, United States
Date Posted: Aug 13, 2019
Caterpillar is investing in our digital future, and we’re looking for talented and motivated Senior Software Engineers to build a world class platform to host a wide range of applications.
Our iconic products have evolved from mechanical work horses to highly sophisticated, and electronically-controlled worksite solutions. This transformation, along with our smart factories and our integrated dealer network, has a wealth of data ready to be leveraged by our customers and our dealers. We’re generating innovative solutions from millions of data points and hundreds of thousands of IoT connected assets.
JOB DUTIES: As a Senior Software Engineer you will contribute to design, development and deployment of Caterpillar’s state-of-the-art digital platform.
· Position requires a four-year degree in computer science or electrical engineering from an accredited college or university
· 5+ years of experience in designing and developing software applications in Java or Scala OR at least three years of experience in Java or Scala with master’s degree.
· Minimum of 1 year of python coding experience.
Top candidates will also have:
· Proven experience in some of the following:
o Designing, developing, deploying and maintaining software at scale.
o Developing software applications using relational and Nosql databases.
o Experience delivering productionized software solutions.
o Deploying software using CI/CD tools such as Jenkins, GoCD, Azure Devops etc.
o Deploying and maintaining software using public clouds such as AWS
o Working within an Agile framework (ideally Scrum)
· Strong understanding and/or experience in some of the following,
o Batch or stream processing systems such as Apache Spark, Flink, Akka, Storm
o Message brokers such as Kafka, Rabbitmq, AWS SQS, AWS SNS, Apache ActiveMQ, Kinesis.
o Experience designing data transformation pipelines.
o Hands one experience with API tools such as Swagger, Postman and Assertible
o Test driven development and behavior driven development.
o Hands on experience with testing tools such as Selenium and Cucumber and their integration into CI/CD pipelines.
o Datastores such as MongoDB, Cassandra, Redis, Elasticsearch, MySQL, Oracle.
· Must demonstrate solid knowledge of computer science fundamentals like data structures and algorithms.
· Ability to work under pressure and within time constraints
· Passion for technology and an eagerness to contribute to a team-oriented environment.