JOB PURPOSE: Responsible for creating and maintaining enterprise level applications that meet the needs of the business community while ensuring scalability and high availability. In the creation of new or the maintenance of existing applications, the Software Engineer III assists in the identification of business requirements, creation of functional designs and supports user acceptance testing. The Software Engineer III is responsible for creating technical designs, encoding the applications, creating and performing unit tests. Throughout the entire Systems Development Life Cycle, the Software Engineer III follows the guidelines and standards as set forth in the IT Department Policies and Procedures. These standards include source code control, documentation, testing practices, naming and project standards, and move to production and release processes.
• Design, code, test, and troubleshoot application programs and/or system interfaces utilizing defined hardware, database, and programming technology
• Maintain and modify application programs; make approved changes per coding standards
• Work under the direction of a supervisor or lead on application development, integration, and maintenance projects
• Work with technical business analysts and developers to ensure understanding of application intent, data input, output requirements, and inclusion of internal checks and controls
• Write and maintain complex application documentation
• Maintain confidentiality with regard to the information being processed, stored, or accessed
• Estimate the level of effort required to accomplish tasks
• Strict adherence to RAC"s IT SDLC processes and standards
• Analyze performance of applications and take action to correct deficiencies based upon consultation with users, other technical resources, and the Manager of Application Development
• Confer with technical business analysts and business community to gain an understanding of needed changes or modifications of existing applications
• Create logical and physical data models to meet the needs of the business community requirements
• Lead the overall technical direction for large highly complex projects including cross functional integration.
• Mentor junior software development team members
• Establish and enforce application coding standards through code reviews
• Have advanced business domain knowledge across all applications in that domain
• Proactively identify and recommend system improvements
• Have Deep dive experience in the following areas: Agile process, NodeJS, HTML 5, AngularJS, JSON, RESTful based services
• Bachelor"s degree or equivalent required
• Minimum 8+ years progressive application development and integration experience, supporting large complex applications.
• 4+ years of Solution Architecture experience.
• Advanced knowledge of SQL against a relational database
• Advanced experience with source control tools (GIT or similar) and defect tracking systems required
• A strong business acumen with basic knowledge of Retail principles
• Clear and effective writing and technical documentation skills
• Advanced understanding of Object Oriented Programming practices and Functional Programming
• Team oriented with strong interpersonal and communication skills
• Excellent prioritization skills with the ability to see a task to completion
• Good analytical/problem-solving skills