PRINCIPAL SOFTWARE ENGINEER

| Chicago

Description

Come 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.

 

Principal Software Engineer will participate in all stages of Caterpillar’s state-of-the-art digital platform software development, including refining product vision, gathering requirements, project planning, software system design, coding, testing, release, deployment and support. This individual will also work collaboratively with other engineering teams to ensure cross-functional goals are met.

 

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.

 

1.     Competent to perform all programming, project management, and development assignments without close supervision; normally assigned the more complex aspects of systems work.

2.     Lead role in complex projects spanning across multiple system components

3.     Work in all phases of product creation process including creating technical requirements, project planning, identifying dependencies, system architecture and development.

4.     Investigation and root cause analysis of software and system defects.

5.     Focus on productivity, quality and competitiveness of major technology initiatives.

6.     Apply knowledge and skills to solve most complex engineering problems.

7.     Organize and drive configuration management activities of the development process

8.     Works directly on complex application/technical problem identification and resolution, including responding to off-shift and weekend support calls.

9.     Works independently on complex systems or infrastructure components that may be used by one or more applications or systems.

10.  Drives application development focused around delivering business valuable features

11.  Mentor and assist software engineers, providing technical assistance and direction as needed

12.  Maintains high standards of software quality by establishing good practices and habits

13.  Identifies and encourage areas for growth and improvement

14.  Communicate with end users and internal customers to help direct development, debugging, and testing of application software for accuracy, integrity, interoperability, and completeness

15.  Performs integrated testing and customer acceptance testing of components that requires careful planning and execution to ensure timely, quality results.

 

  

The 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.

 

#LI

 

Qualifications

Basic qualifications:

  • Position requires a four-year degree from an accredited college or university.
  • Ten years or more of software development experience or at least eight years of experience with master’s degree in computer science or related field.
  • Ten years or more of experience in designing and developing software applications in Java or Scala or at least eight years of experience in Java or Scala with master’s degree in computer science or related field.
  • Three years or more of experience in public cloud technologies such as AWS or Azure.

 Top candidates will also have:

  • Demonstrated leadership on medium to large-scale projects impacting strategic priorities.
  • Ability to cope with shifting priorities, demands and timelines through analytical and problem-solving skills.
  • Ability to effectively prioritize, delegate responsibilities and execute tasks in a high-pressure environment.
  • 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.

·       Strong understanding and/or experience in many of the following,

o   Designing well-defined Restful APIs

o   Writing API proxies on platforms such as Apigee Edge, AWS API Gateway or Azure API Gateway

o   API tools such as Swagger, Postman and Assertible

o   Test driven development and behavior driven development.

o   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 innovation.

·       Bachelor’s degree in Computer science or Electrical engineering or related field is required.

Read Full Job Description
Apply now
loading ...
Emailed

Technology we use

  • Engineering
  • Sales & Marketing
    • JavaLanguages
    • JavascriptLanguages
    • PythonLanguages
    • RLanguages
    • ScalaLanguages
    • SqlLanguages
    • ReactLibraries
    • ReduxLibraries
    • AngularJSFrameworks
    • Backbone.jsFrameworks
    • Ember.jsFrameworks
    • HadoopFrameworks
    • Node.jsFrameworks
    • Ruby on RailsFrameworks
    • SparkFrameworks
    • SpringFrameworks
    • Amazon Web ServicesFrameworks
    • AWS ElasticSearchFrameworks
    • AWS Code PipelineFrameworks
    • DockerFrameworks
    • ApigeeFrameworks
    • FlinkFrameworks
    • AkkaFrameworks
    • Amazon ECSFrameworks
    • MySQLDatabases
    • OracleDatabases
    • PostgreSQLDatabases
    • DynamoDBDatabases
    • RDSDatabases
    • SalesforceCRM

Location

In the heart of Chicago's lively West Loop area, we have easy access to public transport, great bars and restaurants, and an awesome office roof deck.
Caterpillar Does Digital: The Machine Learning Behind the Machines
Watch

What are Cat Digital Perks + Benefits

Culture
Partners with Nonprofits
Team owned deliverables
Team based strategic planning
Open office floor plan
Diversity
Documented equal pay policy
Unconscious bias training
Someone's primary function is managing the company's diversity and inclusion initiatives
Health Insurance & Wellness Benefits
Flexible Spending Account (FSA)
Disability Insurance
Dental Benefits
Vision Benefits
Health Insurance Benefits
Life Insurance
Pet Insurance
Wellness Programs
Onsite Gym
Retirement & Stock Options Benefits
401(K)
401(K) Matching
Company Equity
Performance Bonus
Match charitable contributions
Child Care & Parental Leave Benefits
Generous Parental Leave
Flexible Work Schedule
Remote Work Program
Family Medical Leave
Adoption Assistance
Vacation & Time Off Benefits
Generous PTO
Paid Volunteer Time
Paid Holidays
Paid Sick Days
Perks & Discounts
Casual Dress
Game Room
Recreational Clubs
Professional Development Benefits
Job Training & Conferences
Tuition Reimbursement
Diversity Program
Lunch and learns
Cross functional training encouraged
Promote from within
Time allotted for learning
Customized development tracks
More Jobs at Cat Digital25 open jobs
All Jobs
Data + Analytics
Dev + Engineer
Internships
Product
Project Mgmt
Sales
Developer
new
Chicago
Developer
new
Chicago
Developer
new
Chicago
Sales
new
Chicago
Data + Analytics
new
Chicago
Data + Analytics
new
Chicago
Product
new
Chicago
Developer
new
Chicago
Developer
new
Chicago
Project Mgmt
new
Chicago
Developer
new
Chicago
Developer
new
Chicago
Developer
new
Chicago