Senior Software Engineer, Money (Contract)
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 seeking a Senior Software Engineer to join the SoFi Money Engagement & transaction team. The SoFi Money Engagement & transaction team owns the money movement between various SoFi and Non-SoFi accounts, money movement automation, person to person money transfer, bill payments, special saving account (aka vault), promotion & direct deposit.
On our team, you will be in the middle of it all – implementing functionality, architecting our system, squashing bugs, maintaining the health of our code, and continually growing as an engineer. The ideal candidate is both forward-thinking and hands-on, has a strong sense of ownership and drive for delivery, and is a good mentor and co-worker. 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:
- Use Java, Kotlin and Postgres to build performant and scalable backend applications in a cloud-based microservice architecture
- Participate in shaping the technical architecture of the product
- Help translate product requirements into user stories and technical solutions
- Deliver highly available, secure and scalable services in a production environment
- Mentor other engineers, support the technical culture, and help grow the team
- Generate ideas for new initiatives and technologies
What You’ll Need:
- Bachelor’s degree, ideally in a technical field, but we understand great engineers come from a variety of different backgrounds and also consider relevant work experience
- 4+ years experience working with modern technologies on a full-stack team
- Strong knowledge of object-oriented programming best practices
- Strong sense of responsibility; driving a project from inception to completion and knowing that a project is not complete when it is shipped to production.
- Willingness to roll up your sleeves, collaborate with others and get stuff done
- Affinity for solving problems and shipping impactful features, not polishing perfect code or architecture
- Experience working in a collaborative coding environment, refining designs together, working through code reviews and managing pull requests
- Strong communication and technical leadership skills
- Desire to mentor and help others improve their skills
Nice to Have:
- Proven track record of building highly-scalable REST APIs
- Experience with workflow orchestration systems, such as Temporal.io
- Prior experience deploying applications using Docker and Kubernetes
- Practical knowledge of CI/CD pipelines (gradle, git, automated testing and deployments)
- History of working with a cloud-based microservice architecture and distributed service communications