Details
Posted: 15-Apr-22
Type: Full Time
Salary: Open
Internal Number: R22-1595
Job Description
Position Summary
As a Software Project Engineer for Rockwell Automation, you will have the opportunity to design and develop industry-leading commercial software known for its innovation and usability. You will also be responsible for performing intermediate to complex level software development tasks including, but not limited to, architecture, development, planning, scheduling, and execution.
In this position, you will be a key player in subsystem design, development and testing. You will play an active role in all the stages of the development lifecycle and support your team throughout the process. You will also help ensure that developed products meet requirements and are within total quality management standards. This position will allow you to collaborate with and influence multiple global cross-functional teams and may also require you to be the technical lead of a small to mid-sized team.
When you join our software engineering group, you become part of a team that believes in knowledge sharing and collaboration and that is committed to using reliable and well-thought-out engineering practices and technology to overcome any challenges.
We are looking for someone who will effectively leverage a diverse set of technical backgrounds and opinions by fostering a team-oriented environment and the use of open and direct communications, honesty and respect. The ideal candidate will also actively seek knowledge of new developments in the software engineering, computer engineering, and test automation fields and will identify and pursue career development and training opportunities.
Essential Functions
- Independently gathers and documents requirements for a feature and its components, ensuring the information required for the development of software and corresponding test cases are contained in the specifications.
- Contributes to architectural design and independently develops system designs that meet the requirements. Provides estimates for the design. Considers tradeoffs between requirements, speed, cost and reliability in the choice of a design approach.
- Implements and documents code that meets the requirements of the software design.
- Develops and executes thorough unit test plans. Reports, analyzes, debugs and corrects anomalies. Takes the lead in the integration of other components by solving problems within and across subsystems to produce a final product. Responsibilities may extend to the technical management of the design, testing and integration of other engineers' work in related areas.
- Leads or participates in reviews of documents, designs, code, test cases and user documentation.
- Typically responsible for the ongoing maintenance and integrity of several software subsystems.
- Builds relationships and interacts with peers to ensure assigned tasks are prioritized appropriately.
- Thinks outside the box and is willing to research and explore new avenues to overcome obstacles by utilizing the latest technologies and standards. May function as a go-to person for a technology, software methodology, or other area of expertise.
- Takes the lead on identifying and recommending software development capability improvements in the areas of software development practices and development tools
- Clearly communicates and conveys design concepts, both verbally and in writing.
- Able to learn and understand complex control system concepts.
Basic Qualifications
- Bachelor's degree in Computer Science, Computer Engineering, Electrical Engineering, or equivalent
Preferred Qualifications
- Typically requires a minimum of eight years of experience in a software product development environment
- Experience in large, scalable distributed systems and/or SaaS solutions
- Strong coding, debugging, algorithm design, and problem-solving skills
- Knowledge of Agile principles, tools and techniques is desired
- Experience in back-end development with Java or Kotlin
- Object orientated design using C#, Java or Kotlin
- Proficiency in TypeScript, Node.js, Angular framework, GraphQL
- Software development on both Windows and Linux
- Technical team leadership
- Direct experience with design patterns and architecting modular software
- Direct experience with the Industrial Automation industry is desired
- Direct experience collaborating with local and global technical development teams
- Excellent interpersonal, verbal and written communication skills
- Understanding of container technology such as Docker, Helm, Kubernetes would be an added advantage.
- The Base salary compensation range for this role in Colorado is $115,920.00 - 144,900.00 USD Annual, with an annual target bonus of 8% of base salary
- This position is part of a job family. Experience will be the determining factor.
#LI-MG1 #REMOTE
We are an Equal Opportunity Employer including disability and veterans.
If you are an individual with a disability and you need assistance or a reasonable accommodation during the application process, please contact our services team at +1 (844) 404-7247.