Senior Software Engineer, Member Access & Safety
SoFi
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.
Location: WA - Seattle; CA - San Francisco
The Role:
We’re excited to invite a highly motivated and experienced Senior Engineer to join our friendly Member Access and Safety team at SoFi! Our mission is all about building member trust by developing features that help SoFi members authenticate and secure their accounts—this is a key part of what makes SoFi products trustworthy and reliable.
Our team collaborates across various departments to protect SoFi from external fraud threats while reducing regulatory risks. We strive to create a balanced, risk-based experience for SoFi Members, earning their trust every step of the way.
As a Senior Software Engineer on our team, you’ll play a vital role in building critical components and features. You’ll be involved in the entire product lifecycle, from brainstorming ideas to building, testing, deploying, monitoring, and supporting our mission-critical systems. We’re looking for someone who has a strong sense of ownership, a passion for delivering results, a thirst for learning, and is a great mentor and colleague.
What you’ll do:
- Full SDLC: Collaborate with cross-functional teams to design, architect, and implement end-to-end solutions that include both front-end and back-end components. Use your expertise in various programming languages, frameworks, and technologies to deliver high-quality and scalable software applications.
- Back-end Development: Design and develop robust, scalable, and secure server-side applications and APIs. Work with databases and data models to manage and store information effectively while optimizing performance and maintaining system stability.
- Architecture and Design: Participate in architecture discussions and share valuable insights to help drive technical decisions. Ensure that software design patterns and best practices are followed throughout the development process.
- Testing and Quality Assurance: Conduct thorough testing of software components, including unit testing, integration testing, and end-to-end testing, to ensure the reliability and functionality of the applications.
- Continuous Improvement: Stay updated on industry trends, best practices, and emerging technologies in software development. Advocate for process improvements and embrace new tools and technologies to enhance productivity and efficiency.
- Code Review and Mentorship: Review code contributions from junior developers and provide constructive feedback to promote code quality and maintain coding standards. Be a mentor and share your knowledge and expertise with team members to support their growth.
- Documentation: Create and maintain technical documentation for developed software, APIs, and processes to ensure a comprehensive understanding and knowledge transfer.
What you’ll need:
- Bachelor’s Degree, Computer Science Degree, or equivalent from a fully-accredited college or university
- 5+ years of programming experience, ideally on a modern stack.
- Strong expertise in back-end technologies and programming languages, such as Node.js, Python, Java/Kotlin/Spring/PostgreSQL, and we run on Kubernetes in a service-oriented architecture with over 100 services in production.
- Knowledge of RESTful API design and implementation.
- A willingness to roll up your sleeves, collaborate with others, and get things done!
- A strong sense of responsibility and ownership, driving projects from inception to completion.
- A knack for solving problems and diving deep into the details.
- Experience working in a collaborative coding environment, refining designs together, managing pull requests, and participating in code reviews.
- Excellent communication and collaboration skills.
- Experience working on an SOA or microservice-based application.
Nice to have:
- Experience scaling highly available, mission-critical systems.
- Test-driven development along with unit and integration testing.
- Front-end experience would be a bonus!