Senior Java Engineer

Caterpillar Caterpillar · Industrial · Kosice, Slovakia

Senior Java Engineer responsible for designing, developing, and implementing software applications using agile methods. The role involves acquiring client requirements, resolving workflow problems through automation, writing and enhancing source code, and utilizing automated testing tools. The engineer will also mentor junior team members and stay updated on IT development trends. The company, Cat Digital, leverages data, technology, advanced analytics, telematics, and AI capabilities to build digital solutions for customers and dealers.

What you'd actually do

  1. Designing, modifying, developing, writing and implementing software programming applications for target system using agile methods.
  2. Acquiring client requirements; resolving workflow problems through automation optimization.
  3. Writing source codes for new applications, and/or generating and enhancing code samples for existing applications.
  4. Utilizing automated testing tools to perform the testing and maintenance.
  5. more junior engineers and provide them guidance in creating structured application/interface code, new documentation and guides.

Skills

Required

  • Java 8 or higher
  • RESTful API development
  • Springboot
  • Relational databases (Postgres, MySQL, Oracle)
  • Decision Making and Critical Thinking
  • Effective Communications
  • Software Development
  • Software Development Life Cycle
  • MS Azure Cloud
  • AWS
  • Java
  • Azure DevOps
  • Agile Scrum
  • CI/CD tools
  • MS SQL
  • Message brokers
  • ETL tools
  • Snowflake
  • DB2
  • APIs Design
  • High-performing distributed systems

Nice to have

  • Software Integration Engineering
  • Software Product Design/Architecture
  • Software Product Technical Knowledge
  • Software Product Testing

What the JD emphasized

  • Solid experience with Java 8 or higher and RESTful API development using Springboot.
  • Knowledge of the decision-making process and associated tools and techniques; ability to accurately analyze situations and reach productive decisions based on informed judgment.
  • Understanding of effective communication concepts, tools and techniques; ability to effectively transmit, receive, and accurately interpret ideas, information, and needs through the application of application of appropriate communication behavior.
  • Knowledge of software development tools and activities; ability to produce software products or systems in line with product requirements.
  • Knowledge of software development life cycle; ability to use a structured methodology for delivering and managing new or enhanced software products to the marketplace.
  • Solid knowledge of these tools/technologies MS Azure Cloud, AWS, Java, Azure DevOps, Agile Scrum, CI/CD tools, MS SQL, Message brokers, ETL tools, Snowflake, DB2 (High level), APIs Design, High-performing distributed systems.