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
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) and framework(s) (e.g., Foundation, UI Kit, Swift / Swift UI, Cocoa Touch, Core Data, and X Code - with provided tools to debug memory graph and debug view hierarchy instruments for profiling)
- Strong knowledge with Data Structures, Type Conversions, and Multi - Threading
- Proficiency in automation and continuous delivery methods
- Proficient in all aspects of the Software Development Life Cycle
- Experience with one or more design patterns - MVC, MVVM, MVI, MVP, Singleton, and Viper
- Understands building system tools (e.g., Gradle, Jenkins, and SPM, with enthusiasm for automated unit testing frameworks)
- Demonstrated proficiency in software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- In-depth knowledge of the financial services industry and their IT systems, with Native Mobile Engineering concepts
- Practical cloud native experience
Preferred qualifications, capabilities, and skills
- Experience working at code level
- Understands the importance of unit testing and is able to write meaningful unit tests
- Knowledge of GIT and GIT workflow
- Pair Programming ability is a bonus
- Ability to guide and coach teams on approach to achieve goals aligned against a set strategic initiatives
- Experience with hiring, developing, and recognizing talent