About this role
Job title: Senior Software Engineer
About the Role Senior Software Engineer at Caterpillar is responsible for architecting, designing, and developing distributed backend systems and RESTful APIs using Java and Spring Boot following microservices best practices. The role leads end-to-end software development lifecycle, drives cloud-native solutions, and mentors junior engineers to ensure robust, secure, and high-performance software that aligns with business objectives.
What You'll Do
- Architect, design, and develop distributed backend systems and RESTful APIs using Java and Spring Boot, following microservices best practices.
- Lead the end-to-end software development lifecycle including requirements analysis, technical design, implementation, code reviews, automated testing, deployment, and production support.
- Integrate with AWS cloud services (Lambda, Kinesis, API Gateway, S3, SNS, SQS) and manage infrastructure as code using CloudFormation or Terraform.
- Leverage modern cloud-native technologies, drive technical decisions, and mentor junior engineers to ensure robust, secure, and high-performance solutions.
- Optimize workflows through automation and CI/CD pipelines (Azure DevOps, Jenkins, shell scripting).
- Collaborate with cross-functional teams to gather requirements and ensure alignment with business objectives.
- Participate in technical interviews and code reviews and champion best practices in code quality, security, and software architecture.
- Drive adoption of Agile methodologies.
What We're Looking For
- Bachelor's degree or foreign equivalent in Computer Science, Information Technology or a related field, and 5 years of experience in Java programming, software development or a related occupation.
- Software development experience with Java and Python.
- Java 8 or higher and Spring Boot RESTful API development.
- Experience with cloud or serverless technologies and frameworks such as AWS, Kinesis, API Gateway, CloudFormation/Terraform, IAM.
- Experience with infrastructure as code (CloudFormation or Terraform) and CI/CD tools (Azure DevOps, Jenkins).
- Strong collaboration skills, requirements gathering, and ability to align technical solutions with business objectives. Familiarity with Agile methodologies and participating in interviews and code reviews.
Nice to Have
- Python programming experience.
Compensation & Benefits
- Salary not disclosed in posting.