Principal Software Engineer - Mobile
Who we are:
Shape a brighter financial future with us.
Together with our members, we’re changing the way people think about and interact with personal finance.
We’re a next-generation fintech company using innovative, mobile-first technology to help our millions of members reach their goals. The industry is going through an unprecedented transformation, and we’re at the forefront. We’re proud to come to work every day knowing that what we do has a direct impact on people’s lives, with our core values guiding us every step of the way. Join us to invest in yourself, your career, and the financial world.
We are looking for a seasoned Principal Mobile Developer with a natural inclination to elegantly solve problems. As a member of our mobile engineering team, you will have the opportunity to directly improve the experience of our expanding mobile customer base and play a lead role in enabling mobile developers at SoFi with great tooling and systems. You will get the chance to take on complex and interesting problems as part of a fast-paced, highly collaborative team. The ideal candidate will be a mentor and a team player who is hands-on and comfortable driving solutions from initial architecture to final implementation with a strong sense of ownership and drive for delivery. At SoFi, we pride ourselves on the collaboration between Product, Design, and Engineering and so you will be involved in the entire product lifecycle, from ideation through building, deploying and continual improvement and evolution.
What you’ll do:
Technical development, debugging, and delivery of best-in-class mobile application
Collaborate with cross-functional teams to define, design, and ship new features
Continuously improve the applications - find and fix bugs while improving application performance
Discover, evaluate, and implement new technologies to maximize development efficiency
Implement upgrades, rebuilds, feature flagging, and generally keep CI/CD pipelines in good health.
Juggle multiple tasks and projects simultaneously in a results-oriented environment
Evaluate opportunities to bring new features to mobile users from a technical perspective
Create technical requirements documentation based on Product Requirements
Build strong working relationships with coworkers and cross-organizational teams
What you’ll need:
Bachelor’s and/or Master's Degree in a technical field
10+ years mobile development experience with iOS, Android, or Flutter development platforms
Sound programming fundamentals: experience working with memory management, multi-threaded programming, and animations.
Experience in designing and using backend APIs for driving mobile app features
Experience working with Agile development processes.
Experience with maintaining CI/CD pipelines and test-automation.
Experience with app architectural patterns, Dependency Management, App coordination and navigation.
Very strong interpersonal skills - must be able to demonstrate an ability to work well with other non-technical members of the team.
Nice to have:
Familiarity with hybrid app development and Flutter.
Experience with observability tools like DataDog and New Relic
Worked with trading and/or exchange systems.