The Senior RPG Software Engineer is a highly skilled and experienced professional responsible for the design, development, implementation, and maintenance of business applications primarily using the RPG programming language (including ILE RPG, Free-Format RPG). This role involves working on complex projects, providing technical leadership, mentoring junior developers, and ensuring the stability and performance of critical business systems running on IBM i (AS/400) platforms. The Senior RPG Software Engineer will collaborate closely with business analysts, system administrators, and other IT team members to deliver high-quality, efficient, and reliable software solutions.
Responsibilities:
Software Development:
Design, code, test, and debug complex RPG programs and modules according to specifications and business requirements.
Develop and maintain applications utilizing various RPG dialects (ILE RPG, Free-Format RPG, RPG IV).
Work with embedded SQL to interact with DB2 databases on the IBM i platform.
Develop and maintain user interfaces using DDS, SDA, or other relevant IBM i technologies.
Implement and maintain APIs and web services for system integration (e.g., using Integrated Web Services Server (IWS)).
Develop and maintain batch processing jobs and automation scripts.
Ensure code quality, performance, and adherence to coding standards and best practices.
System Maintenance and Support:
Troubleshoot and resolve application issues and bugs in a timely and efficient manner.
Perform system analysis and identify areas for improvement and optimization.
Apply PTFs (Program Temporary Fixes) and perform system upgrades as needed.
Monitor system performance and proactively address potential issues.
Provide on-call support as required.
Technical Leadership and Mentorship:
Provide technical guidance and support to junior RPG developers.
Participate in code reviews and ensure adherence to development standards.
Assist in the estimation of development effort and timelines.
Contribute to the development and implementation of best practices and coding standards.
Potentially lead small development projects or modules.
Collaboration and Communication:
Work closely with business analysts to understand requirements and translate them into technical specifications.
Collaborate with system administrators, database administrators, and other IT team members.
Communicate effectively with stakeholders regarding project status, issues, and resolutions.
Participate in team meetings and contribute to project planning.
Documentation:
Create and maintain technical documentation, including program specifications, design documents, and user manuals.
Document code changes and system configurations.
Continuous Learning:
Stay up-to-date with the latest advancements in RPG programming, IBM i technologies, and related industry trends.
Participate in training and professional development activities.
Qualifications:
Bachelor's degree in Computer Science, Information Technology, or a related field (or equivalent work experience).
Minimum of 5-7 years of hands-on experience in RPG programming on the IBM i (AS/400) platform.