This job posting is no longer active.
Location: Chicago, IL, United States
Date Posted: May 25, 2020
Lead Software Engineer provides technical leadership in design, development and deployment of Caterpillar’s state-of-the-art digital platform. This position will build a world class platform to host a wide range of digital applications.
JOB DUTIES: Responsibilities of the incumbents are across functional lines with individuals assigned in new program development and/or maintenance of existing mobile, WEB, Cloud, server, personal computer, mainframe, and/or distributed computing systems.
· Position requires a four-year degree from an accredited college or university.
· Eight years or more of software development experience or at least five years of experience with master’s degree in computer science or related field.
· Eight years or more of experience in designing and developing software applications in Java or Scala or at least five years of experience in Java or Scala with master’s degree in computer science or related field.
Top candidates will also have:
· Proven experience in many of the following,
o Designing, developing, deploying and maintaining software at scale.
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 Datastores such as MongoDB, Cassandra, Redis, Elasticsearch, MySQL, Oracle.
o Developing software applications using relational and Nosql databases.
o Application architectural patterns, such as MVC, Microservices, Event-driven, etc.
o Deploying software using CI/CD tools such as Jenkins, GoCD, Azure Devops etc.
o At least three plus years of deploying and maintaining software using public clouds such as AWS or Azure.
o Working within an Agile framework (ideally Scrum).
o Debugging and maintaining software in Linux or Unix platforms.
o Experience designing well-defined Restful APIs
o Experience writing API proxies on platforms such as Apigee Edge, AWS API Gateway or Azure API Gateway
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.
· 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.
· Demonstrated leadership on medium to large-scale projects impacting strategic priorities.
· Demonstrated experience in consulting or advisory roles.
· Bachelor’s degree in Computer science or Electrical engineering or related field is required.