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.
* End-to-end ownership of design, development, implementation, and support of applications. Must have a tenacity for continuous improvement.
* 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 in regards to the information processed, stored, or accessed
* Strict adherence to RAC's IT SDLC and Agile 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
* Work with enterprise infrastructure/operations team to ensure application is reliable and scalable
* 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
* 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.
* Strong experience with Java, Spring technologies, and SOA (REST/JSON)
* Strong experience with micro service architecture and continuous integration
* Experience with Mulesoft ESB technology
* Understanding of cloud architecture and tools especially AWS. Knowledge of serverless technologies a plus
* Advanced knowledge of SQL against a relational database
* Advanced experience with source control tools (GIT or similar) and defect tracking systems required
* Experience with application performance monitoring and testing tools
* 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
Rent-A-Center leases household durable goods to customers on a rent-to-own basis.