join a world class organization and play a key role in its digital
transformation. Caterpillar is looking for talented and motivated software
engineers to build a world class platform to host a wide range of applications.
Software Engineer provides technical leadership in design, development and
deployment of Caterpillar’s state-of-the-art digital platform. The Lead Engineer for Data Platform will have
responsibility for leading on a variety of data projects. This includes
orchestrating pipelines using modern Data tools/architectures as well as
designing and engineering of existing data processing systems. Lead Engineer
provides technical leadership in design, development and deployment of Caterpillar’s
state-of-the-art digital platform. This position is part of the team that would
build a world class platform to host a wide range of digital applications.
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.
- Provides technical leadership and direction for data
engineering and design across multiple projects and functional areas.
- Advises on performance optimizations and
best practices for scalable data models, pipelines and queries.
- Creates robust and automated pipelines
to ingest and process structured and unstructured data from source systems
into analytical/non-analytical platforms using batch and streaming
mechanisms leveraging cloud native toolset
- Guide the team to develop a structured
application/interface code, new program documentation, operations
documentation and user guides in a casual, flexible environment
- Communicate with end users and internal
customers to help direct development, debugging, and testing of
application software for accuracy, integrity, interoperability, and
- Drives application development focused
around delivering business valuable features
- Mentor and assist developers, providing
technical assistance and direction as needed
- Maintains high standards of software
quality within the team by establishing good practices and habits
- Lead development of new functionality
and applications on cross-functional Agile project teams
- Performs integrated testing and customer
acceptance testing of components that requires careful planning and
execution to ensure timely, quality results.
- Employee is also responsible for
performing other job duties as assigned by Caterpillar management from
time to time.
- Implement custom applications using
tools such as Kinesis, Lambda and other AWS tools as required to address
streaming use cases
- Engineers and supports data structures
including but not limited to SQL and NoSQL databases
- Engineers and maintain ELT processes for
loading Snowflake and AWS data
- Engineers API’s for returning data from
these structures to the Enterprise/Customer Applications
- Leverages the right tools
for the right job to deliver testable, maintainable, and modern data
- Works with other scrum team members to
estimate and deliver work inside of a sprint
- Researches data questions, identifies
root causes, and interacts closely with business users and technical
- Performance tunes queries and stored
procedures to keep databases and applications optimized
- Reduces OT technical debt over time with
root cause identification and resolution of system problems
position manages the completion of its own work assignments and coordinates
work with others. Based on past
experiences and knowledge, the incumbent normally works independently with
minimal management input and review of end results.
customers include Caterpillar customers, dealers, other external companies who
purchase services offered by Caterpillar as well as internal business unit
and/or service center groups. The
position is challenged to quickly and correctly identify problems that may not
be obvious. The incumbent solves problems by determining the best course of
action, within departmental guidelines, from many existing solutions. The
incumbent sets priorities and establishes a work plan in order to complete
broadly defined assignments and achieve desired results. The position
participates in brainstorming sessions focused on developing new approaches to
meeting quality goals in the measure(s) stated.
requires a four-year degree from an accredited college or university.
years or more of data engineering experience or at least five years of
experience with master’s degree in computer science or related field.
years or more of experience in designing and developing software applications
in Java or at least five years of experience in Java with master’s degree in
computer science or related field.
Top candidates will
Proven experience in many of the following:
designing data transformation pipelines.
- Able to create
modern data pipelines and data processing using AWS PAAS components (Glue,
etc.) or open source tools (Spark, Hbase, Hive, etc.).
- Ability to
develop SQL structures that support high volumes and scalability using
RDBMS such as SQL Server, MySQL, Aurora, etc.
- Ability to model
and design modern data structures, SQL/NoSQL databases, Data Lakes, Cloud
Data Warehouse (SnowFlake preferred)
on Datastores such as DynamoDB, Redis, Elasticsearch, MySQL, Oracle, AWS
- Experience with
Message brokers such as Kinesis, Kafka, Rabbitmq, AWS SQS, AWS SNS, Apache
software using CI/CD tools such as Azure Devops, Jenkins, etc.
- Experience with
API tools such as REST, Swagger, Postman and Assertible
- Debugging and
maintaining software in Linux or Unix platforms.
- Test driven
- Hands on
experience with testing tools such as Selenium and Cucumber and their
integration into CI/CD pipelines.
building transactional databases.
- Python, Java,
Scala programming experience preferred
experience engineering solutions in AWS
- AWS certification preferred but not
required prior to hiring
- Working in Agile Framework/Kanban
Must demonstrate solid knowledge of computer
science fundamentals like data structures & algorithms.
for technology and an eagerness to contribute to a team-oriented environment.
leadership on medium to large-scale projects impacting strategic priorities.
degree in Computer science or Electrical engineering or related field is