at Caterpillar, Inc. in Chicago, Illinois, United States
Job Description
Career Area:
Business Technologies, Digital and Data
Job Description:
Your Work Shapes the World at Caterpillar Inc.
When you join Caterpillar, you’re joining a global team who cares not just about the work we do – but also about each other. We are the makers, problem solvers, and future world builders who are creating stronger, more sustainable communities. We don’t just talk about progress and innovation here – we make it happen, with our customers, where we work and live. Together, we are building a better world, so we can all enjoy living in it.
Cat Digital is the digital and technology arm of Caterpillar Inc., leveraging the latest technologies to build industry leading digital solutions for our customers and dealers. With over 1.5 million connected assets worldwide, our teams use data, technology, advanced analytics, telematics, and AI capabilities to help our customers build a better, more sustainable world.
Job Summary:
The Sr. Software Engineer contributes to design, development and deployment of Caterpillar’s state-of-the-art digital platform. This position will help build various customer facing and internal Caterpillar mobile apps.
What You Will Do:
+ Responsibilities of the Senior Mobile Engineer are across functional lines with individuals assigned in new program development and/or maintenance of CAT Central https://apps.apple.com/au/app/cat-central/id1608965148
+ Competent to perform all programming, project management, and development assignments without close supervision; normally assigned the more complex aspects of systems work.
+ Works directly on complex application/technical problem identification and resolution, including responding to off-shift and weekend support calls.
+ Works independently on complex systems or infrastructure components that may be used by one or more applications or systems.
+ Drives application development focused around delivering business valuable features
+ Mentor and assist software engineers, providing technical assistance and direction as needed
+ Maintains high standards of software quality within the team by establishing good practices and habits
+ Identifies and encourage areas for growth and improvement within the team
+ 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 completeness
+ 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.
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.
Typical 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.
What You Will Have:
Decision Making and Critical Thinking: Knowledge of the decision-making process and associated tools and techniques; ability to accurately analyze situations and reach productive decisions based on informed judgment.
Effective Communications: Understanding of effective communication concepts, tools and techniques; ability to effectively transmit, receive, and accurately interpret ideas, information, and needs through the application of appropriate communication behaviors.
Software Development: Knowledge of software development tools and activities; ability to produce software products or systems in line with product requirements.
Software Development Life Cycle: Knowledge of software development life cycle; ability to use a structured methodology for delivering and managing new or enhanced software products to the marketplace.
Software Integration Engineering: Knowledge of software integration processes and functions; ability to design, develop and maintain interfaces and linkage to alternative platforms and software packages.
Software Product Design/Architecture: Knowledge of software product design; ability to convert market requirements into the software product design.
Software Product Technical Knowledge: Knowledge of technical aspects of a software products; ability to design, configure and integrate technical aspects of software products.
Software Product Testing: Knowledge of software product testing; ability to design, plan, and execute testing strategies and tactics to ensure software product quality and adherence to stated requirements.
Considerations for Top Candidates:
+ Position requires a four-year degree from an accredited college or university or equivalent working experience.
+ Five years or more of software development experience or at least three years of experience with master’s degree in computer science or related field.
+ Five years or more of experience in designing and developing mobile applications using mobile framework such as React Native and Angular/Ionic/Flutter, Objective-C, Swift, Java, Kotlin.
+ Proficient with communicating via REST APIs
+ Experience with Firebase Cloud Messaging, Firebase Analytics & Firebase Performance.
+ Strong understanding of security principles and experience implementing security measures in mobile applications.
+ Understanding of mobile application performance optimization techniques
+ Experience with agile development methodologies.
+ Experience writing unit tests, integration tests.
Top candidates will also have:
Proven experience in many of the following,
+ Extensive React Native experience
+ Full stack node.js api development for mobile applications
+ Experience with mobile applications in the eCommerce space
+ Experience managing applications in Apple AppStore Connect and Google Play console
+ Deploying software using CI/CD tools such as Jenkins, GoCD, Azure Devops etc.
+ Working within an Agile framework (ideally Scrum)
+ Strong understanding and/or experience in many of the following,
+ Test driven development and behavior driven development.
+ 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
What You Will Get:
Working with a Fortune 100 leader, you can build your career on a global scale and take advantage of development opportunities with emerging technologies. We’ve created an inclusive environment for you to explore your passions, make an impact and do the work that really matters. Join Us.
Additional Information:
Flexible hybrid work environment
\#LI-Hybrid
\#BI
About Caterpillar
Caterpillar Inc. is the world’s leading manufacturer of construction and mining equipment, off-highway diese