Job responsibilities
- Executes creative software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems
- Develops secure high-quality production code, and reviews and debugs code written by others
- Identifies opportunities to eliminate or automate remediation of recurring issues to improve overall operational stability of software applications and systems
- Leads evaluation sessions with external vendors, startups, and internal teams to drive outcomes-oriented probing of architectural designs, technical credentials, and applicability for use within existing systems and information architecture
- Leads communities of practice across Software Engineering to drive awareness and use of new and leading-edge technologies
- Adds to team culture of diversity, equity, inclusion, and respect
- Codes in full stack Java on branch banking applications in an Agile environment
- Implements test automation practices and conducts performance testing on branch banking applications
- Leads and mentors junior Software Engineers
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years of applied experience
- Hands-on practical experience delivering system design, application development, testing, and operational stability
- Advanced in one or more programming language(s)
- Proficiency in automation and continuous delivery methods
- Proficient in all aspects of the Software Development Life Cycle
- Advanced understanding of agile methodologies such as CI/CD, Applicant Resiliency, and Security
- Demonstrated proficiency in software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- Practical cloud native experience
- Proficiency in Full stack development in (javaScript, React, Vue.JS, Angular, Java, SpringBoot, SQL, Non-SQL, and Python)
- Experience in implementing test automation practices such as Functional, Unit, Component, Contract, and Performance testing
- Leadership experience with varying levels of software engineers in an Agile environment
Preferred qualifications, capabilities, and skills
- Experience with logical and physical data modeling
- Experience in building failure safe and resilient applications
- Understanding of user discovery and design
- Hands-on experience with a variety of application interface communication such as (micro-services, batch, event-streaming, etc.)
- Experience working within an Agile team utilizing scrum framework
- Strong organizational and communication skills