Senior Software Engineer, Bank
Role summary
SoFi is seeking a Senior Software Engineer for their SoFi Money team to build and maintain backend services supporting client onboarding, account setup, and payment configuration. The role involves developing APIs, writing clean and tested code in a JVM-based stack (Kotlin/Java, Spring Boot), and participating in the full product lifecycle. The ideal candidate has 1+ years of backend experience, familiarity with distributed systems, and API development. Preferred qualifications include experience with cloud platforms (AWS/GCP), Kubernetes, financial systems, and event-driven architectures. This hybrid role is based in San Francisco.
Employee Applicant Privacy Notice
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 financial services company and national bank 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.
The Role
We are looking for a Software Engineer to join our SoFi Money team. As a member of the SoFi Money team, you will help build new systems, maintain the health of our systems, and continually grow your skill set. The ideal candidate is both forward-thinking and hands-on, has a solid sense of ownership and drive for delivery, and is a strong team player. 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
What You’ll Need
Nice to Have
SoFi provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, color, religion (including religious dress and grooming practices), sex (including pregnancy, childbirth and related medical conditions, breastfeeding, and conditions related to breastfeeding), gender, gender identity, gender expression, national origin, ancestry, age (40 or over), physical or medical disability, medical condition, marital status, registered domestic partner status, sexual orientation, genetic information, military and/or veteran status, or any other basis prohibited by applicable state or federal law.
The Company hires the best qualified candidate for the job, without regard to protected characteristics.
Pursuant to the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records.
New York applicants: Notice of Employee Rights
SoFi is committed to an inclusive culture. As part of this commitment, SoFi offers reasonable accommodations to candidates with physical or mental disabilities. If you need accommodations to participate in the job application or interview process, please let your recruiter know or email accommodations@sofi.com.
Due to insurance coverage issues, we are unable to accommodate remote work from Hawaii or Alaska at this time.
Sample SoFi interview questions
- 1
Develop a real-time system for managing traffic and rerouting.
system designmedium - 2
Reverse Nodes in k-Group Reverse nodes in k-group in a linked list. Input: head = [1,2,3,4,5], k = 3 Output: [3,2,1,4,5] Explanation: The first 3 elements are reversed, while the remaining 2 are left untouched since they don't form a complete group.
codingmedium - 3
Clone an Undirected Graph Clone an undirected graph. Input: adjList = [[]] Output: [[]] Explanation: Creates a new, deeply cloned graph containing only one single node with zero connected neighbors.
codingmedium - 4
Longest Substring with Two Distinct Characters Find the longest substring with at most two distinct characters. Input: s = "ccaabbb" Output: 5 Explanation: The substring "aabbb" contains exactly two distinct characters and has a maximum length of 5.
codingmedium - 5
Diameter of a Binary Tree Find the diameter of a binary tree. Input: root = [1,2] Output: 1 Explanation: The longest path is simply the single edge connecting the root node to its only child.
codingmedium
Sign up for a personalized interview prep pack tailored to this role.