Senior iOS Software Engineer, Banking
Company Description
It all started with an idea at Block in 2013. Initially built to take the pain out of peer-to-peer payments, Cash App has gone from a simple product with a single purpose to a dynamic ecosystem, developing unique financial products, including Afterpay/Clearpay, to provide a better way to send, spend, invest, borrow and save to our 47 million monthly active customers. We want to redefine the world's relationship with money to make it more relatable, instantly available, and universally accessible.
Today, Cash App has thousands of employees working globally across office and remote locations, with a culture geared toward innovation, collaboration and impact. We've been a distributed team since day one, and many of our roles can be done remotely from the countries where Cash App operates. No matter the location, we tailor our experience to ensure our employees are creative, productive, and happy.
Check out our locations, benefits, and more at cash.app/careers.
Job Description
Cash App's mission is to make money instantly available and universally accessible - all the products and features we've released in the app are based on those principles. Banking is one of the newest Cash App products and we're looking for a Senior iOS Software Engineer to join this team and help deliver on our vision of economic empowerment.
Banking at Cash offers users the opportunity to access banking services that are relatable, magically simple, and universally accessible. The Banking Mobile Engineering team works across 3 important verticals to deliver a first-class customer experience. The team works on core banking services such as Paper Money Deposit and Overdraft protection; cards services such as Spending Insights and Digital Wallet access; and money management products such as Savings and Investing. We are looking for engineers ready to rethink how banking services are accessed and solve for the technical challenges that come with it.
You Will
- Build end-to-end features of the app: networking, persistence, business logic, and UI
- Build products and services across multiple Banking verticals
- Craft durable, well-tested code with an unwavering commitment to product quality
- Re-architect legacy code and prep it to scale for the future of the product and the team
Qualifications
You Have
- 5+ years of experience creating readable, well-crafted, and maintainable code
- Experience reading and upgrading legacy codebases
- Experience voicing customer feedback into product solutions (engineering makes substantive contributions to product definition)
- A commitment to continuous improvement (yourself, your teammates, your software)
- Experience with building banking products
Technologies We Use and Teach
- Swift, Objective-C, Kotlin (believe it! - we collaborate directly with our friends on Android)
- UIKit, CoreAnimation, SQLite, Accessibility
- Unit tests, snapshot tests, integration tests
- Protocol buffers
Qualifications
You Have
- 5+ years of experience creating readable, well-crafted, and maintainable code
- Experience reading and upgrading legacy codebases
- Experience voicing customer feedback into product solutions (engineering makes substantive contributions to product definition)
- A commitment to continuous improvement (yourself, your teammates, your software)
- Experience with building banking products
Technologies We Use and Teach
- Swift, Objective-C, Kotlin (believe it! - we collaborate directly with our friends on Android)
- UIKit, CoreAnimation, SQLite, Accessibility
- Unit tests, snapshot tests, integration tests
- Protocol buffers