Location: Chicago, IL
Job Description:
Diversified Services is seeking a Sr. Software Engineer you will contribute to design, development, testing, deployment, and support of software systems and/or applications.
Responsibilities:
- 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.
- Maintains high standards of software quality by establishing good practices and habits.
- Identifies and encourage areas for growth and improvement within the team.
- 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.
- Translate application storyboards and use cases into functional applications. Design, build, and maintain efficient, reusable, and reliable web applications. Ensure the best possible performance, quality, and responsiveness of applications.
- Lead by example – know to code extensively. Design and implement software platform with Standard Architecture patterns.
- Identify bottlenecks and bugs, and devise solutions to these problems.
- Participate in early product demonstrations to customers. Interact with multiple stakeholders, like Product Owners, peer leaders, DB developers, Solution architects and developers.
- Well versed in writing unit and integration tests using standard frameworks
Typical Day
Flexible — Can be remote, located in Peoria, or Chicago.
Position Requirements:
Position requires a four-year degree from an accredited college or university.
Technical Skills Required
- 8 years or more of software development experience or at least 5 years of experience with master’s degree in computer science or related field.
- 5 years or more of experience in designing and developing software applications in Java or at least one year of experience in Java, C# or node.js with master’s degree in computer science or related field.
- 5 years or more of developing customer facing applications using Angular, Reactjs or Vuejs
- 5 years or more of experience coding HTML 5, CSS3, JavaScript and Web components
- Strong understanding of object-oriented programming
- Strong understanding of Design patterns.
- Strong fundamental knowledge of HTML, CSS, and JavaScript.
- A knack for writing clean, readable, and easily maintainable code.
- Understanding of fundamental design principles for building a scalable application
- Experience implementing automated unit tests – TDD exposure will be advantageous.
- Proficient understanding of code versioning tools such as Git etc.
- Knowledge of Cloud platforms like Azure / AWS is a must.
- Understanding of fundamental design principles behind a scalable application.
- Experience in setting standards for a team – from development to design.
- Should have experience in leading DevOps practices for a large program.
- Effective verbal and written communication skills.
- Ability to translate complex data sets and research into simple business recommendations.
- Good Understanding and implementation experience if OAuth 2.0 and integration experience with federated Identity
Top candidates will also have:
- Full stack development experience for customer facing applications.
Proven experience in some of the following,
- Designing, developing, deploying, and maintaining software at scale.
- Developing software applications using relational and NoSQL databases.
- 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 some of the following,
- Hands one experience on AWS/Azure along with API tools such as Swagger, Postman and Assertible
- Test driven development and behavior driven development.
- Mobile design and responsive design. Cross-browser development
- Datastores such as MongoDB, Cassandra, Redis, Elasticsearch, MySQL, Oracle.
- Must demonstrate solid knowledge of computer science fundamentals like data structures and algorithms.
Soft Skills Required
- Passion for technology and an eagerness to contribute to a team-oriented environment.
- Communication
Additional Information:
An Equal Opportunity Employer