Job Description:
This position is responsible for creating, testing, ensuring the quality of, and maintaining a product or product line. The R&D Software Engineer 3 will perform complex code modification, testing, and debugging tasks as well as provide high-level analysis related to software design and development.
Key Responsibilities
- Work collaboratively within an Agile Team to write high quality, testable code that meets the Definition of Done:
- Strive to meet team commitments.
- Adopt a test-first approach to software development in which, where possible, the test is developed before the code.
- Participate in design and code reviews with other engineers.
- Create automated unit, system, and acceptance tests.
- Participate in test plan reviews.
- Perform unit/module testing of software.
- Actively support and contribute to the ending of iteration demos.
- Responsible for assigned integration, testing, and deployment tasks.
- Actively foster continuous team improvement in self and team.
- Contribute to team retrospectives; help to identify and resolve team impediments.
- Take ownership of problems and continuously strive to become a better problem solver.
- Write and maintain documentation to describe program development, logic, coding, testing, changes, and corrections.
Planning
- Support Product Management in program backlog refinement and estimating features.
- Establish own capacity/velocity.
- Support story refinement, help identify risks and dependencies.
- Support the Agile Team in establishing achievable PI objectives.
- Help to identify dependencies and foster cross-team co-ordination.
- Commit to the mutually agreed plan.
- Actively participate in backlog refinement sessions in collaboration with other Agile team members.
- Identify and capture backlog items local to the team, such as defects and refactors.
- Actively participate in team planning and contributing to team goals.
- Volunteer for and commit to delivering stories and tasks within the iteration.
Enable Agility
- Work within a self-directed Agile team; commit to work and own the outcome.
- Demonstrate and cultivate a passion for delivering high-quality products aligned with customer needs; gain customer exposure to build empathy.
- Employ continuous learning; continue to build domain expertise and keep abreast on new technology, processes, systems, and tools.
- May mentor new team members and provide technical feedback.
- Actively communicate and collaborate within the team and across functional boundaries.
Role Definition
Professional Staff. A senior-level professional role. Evaluation, originality or ingenuity required. Knows and applies the fundamental concepts, practices, and procedures of a particular field. Has mastered the key responsibilities. Assignments can be broad in nature. May serve as a resource to others to resolve complex problems and issues. Instructions generally provided in general terms. May take on project lead role as required.
Job-Specific Authority and Scope
Generally works independently.
Examples of typical decisions without manager consultation:
- Volunteer for and commit to delivering stories and tasks within the sprint.
- Establish own capacity/velocity for each increment.
- Take ownership of problems and continuously strive to become a better problem solver.
- Typically has no direct reports.
- Typically has no total staff.
- Typically has a global geographic focus.
- Typically does not manage a budget.
Business Travel and Physical Demands
- No (or minimal) business travel is expected for this position.
- Office environment. No special physical demands are required.
Preferred Education
Bachelor's degree or global equivalent in a related field.
Work Experience
Typically, 8 or more years of experience in software development or a related field.
Required Skills & Competencies
- Heavy experience in software development using IBM Assembler in the zOS operating system
- Skills with system level functions such as SVCs and PC calls.
- Experience working with mainframe database and/or mainframe communications systems.
- Experience with CA IDMS a plus.
General Skills & Competencies
- Demonstrates high personal integrity and ability to earn trust from others.
- Demonstrates a growth mindset, seeks feedback often and is effective in continuous personal and professional development.
- Participating in self-directed learning activities aimed at developing deep expertise within the technical domain, including reading relevant publications, participating in domain forums or groups, etc.
- Advanced design/debugging/coding skills.
- Complex problem-solving skills.
- Communications and organization skills.
- Teamwork skills.
- Leadership skills and ability. Coaching and mentoring skills.
- Desired Mainframe Technical Skills & Experience
- Additional experience in one or more of the following languages: C, C++, COBOL, PL/1, ISPF CLIST, REXX, JCL.
- Knowledge and related product expertise in one or more of the following: SQL, LE, Endevor, CICS, MQ Series, WebSphere, SNA, TCP/IP.