Position Summary
As a Software 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 basic software testing tasks including, but not limited to, test development, planning, scheduling, and execution.
In this position, you will be highly involved in subsystem design, implementation, and testing, working very closely with the support of our senior engineers. 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 multiple global cross-functional teams.
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 and learn from 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. The candidate should be an experienced professional with a full understanding of area of specialization and an ability to resolve wide range of issues in creative and effective ways.
This role reports to the Software Engineering Manager and is located in Pune, India What you will do
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.
Participates in 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.
Qualifications
Educational Qualifications:
Bachelor of Science in Computer Science, Computer Engineering or any other Engineering, with concentration in software; or equivalent knowledge in the areas of software engineering (software requirements analysis, software design, software testing) desired.
Experience Requirements: ?Minimum of 7 years? experience in Software Development, Applications Engineering work, or other related role
KNOWLEDGE/SKILL
?Strong knowledge and working experience in client/server, distributed and/or web-based environment utilizing enterprise Java, Spring Framework, Maven, RESTful APIs/Microservices and Web Technologies
?Strong working experience with Apache Spark and Spark frameworks (e.g. Spark SQL, Spark Structured Streaming)
?Strong working experience working with Apache Hadoop Distributions (HDFS, HBase, YARN, Hive)
?Agile scrum delivery experience.
?Relevant experience in database (preferably PostgreSQL, MS SQL Server, Oracle)
?Experience with continuous integration practices(Jenkins etc.)
?Should be familiar with Linux and its operation, networking, and security.
?Good interpersonal, verbal and written communication skills.
?Knowledge and experience with selecting and using right Open Source project/library/tool.
?Understanding and implementation of security and data protection.
Keyskills: Software Development Software Engineer Applications Engineering
Rockwell Automation, the worlds largest company dedicated to industrial automation and information, makes its customers more productive and the world more sustainable. Throughout the world, our flagship Allen-Bradley?and Rockwell Software?product brands are recognized for innovation and excellence.