Senior Software Engineer – Experimentation Platform
Company | SoFi |
---|---|
Location | Seattle, WA, USA, San Francisco, CA, USA |
Salary | $Not Provided – $Not Provided |
Type | Full-Time |
Degrees | Bachelor’s |
Experience Level | Mid Level, Senior |
Requirements
- Bachelor’s Degree, Computer Science Degree, or equivalent from a fully-accredited college or university
- 4+ years of programming experience, ideally on a modern stack.
- Hands-on experience with Snowflake, AWS services, Kafka, dbt, docker/k8s and Airflow.
- Strong understanding of data ingestion, Orchestration, transformation and reverse ETL best practices and design principles
- Strong expertise in back-end technologies and programming languages, such as Python and Java/ Kotlin/ Spring / SQL
- Knowledge of RESTful API design and implementation.
- Willingness to roll up your sleeves, collaborate with others and get stuff done
- Strong sense of responsibility and ownership, driving a project from inception to completion
- Affinity for solving problems and diving deep into the details
- Experience working in a collaborative coding environment, refining designs together, working through code reviews, and managing pull requests
- Excellent communication and collaboration skills
Responsibilities
- Collaborate with cross-functional teams to understand experimentation requirements and design scalable solutions.
- Develop robust, scalable, and secure solutions and APIs. Work with databases, Data lake and data models to manage and store information effectively. Optimize performance and maintain system stability.
- Participate in architecture discussions and provide valuable insights to drive technical decisions. Ensure that software design patterns and best practices are followed throughout the development process.
- 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.
- Keep abreast of industry trends, best practices, and emerging technologies in software development. Advocate for process improvements and adopt new tools and technologies to enhance productivity and efficiency.
- Review code contributions from junior developers and provide constructive feedback to promote code quality and maintain coding standards. Act as a mentor and share your knowledge and expertise with team members to foster their growth.
- Create and maintain technical documentation for developed software, APIs, and processes to ensure comprehensive understanding and knowledge transfer.
Preferred Qualifications
- Experience working on A/B testing, experimentation, feature rollout, and dynamic configuration.
- Awareness of experimentation SaaS tools in the industry
- Experience scaling highly available, mission-critical systems
- Experienced with finance / fintech or enthusiastic to learn and grow in this space