Mid & Sr/Lead - Software Engineers
Chicago, IL (REMOTE DURING COVID)
Rate: $50/Hr on CTC
Working across the digital portfolios in Caterpillar. Digital Platforms, IOT, AI Engineering, Micro API Service Platforms, and Big Data Platforms that support the entire IT & Business organizations across Caterpillar Digital
Software Engineer contributes to design, development and deployment of Caterpillar’s state-of-the-art digital platform.
1. Competent to perform all programming, project management, and development assignments without close supervision
2. Works directly on complex application/technical problem identification and resolution, including responding to off-shift and weekend support calls
3. Works independently on complex systems or infrastructure components that may be used by one or more applications or systems.
4. Drives application development focused around delivering business value
5. Mentor and assist software engineers, providing technical assistance and direction as needed
6. Maintains high standards of software quality within the team by establishing good practices and habits
7. Proactively reaches out for help when stuck on an issue after doing reasonable independent research 8. Maintain a sense of urgency when working on tasks and actively followup on any dependencies or blockers
• Bachelor’s degree in Computer science or Electrical engineering or related field is required
Required Technical Skills
• Three years or more of experience in designing and developing software applications in Java, Python, and/or Scala.
Proven experience in following:
o Designing, developing, deploying and maintaining software at scale.
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 Deploying and maintaining software using public clouds such as AWS or Azure.
o Working within an Agile framework (ideally Scrum)
Strong understanding and/or experience in many 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 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.
o Datastores such as MongoDB, Cassandra, Redis, Elasticsearch, MySQL, Oracle.
o Debugging and maintaining software in Linux or Unix platforms.
• 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 small to medium-scale projects impacting strategic priorities