Software Engineer II (ML Feature Platform)
WFA Digital Insight
The demand for skilled software engineers in machine learning is on the rise, with the market expected to grow by 25% in the next year. Affirm, a leader in honest and transparent credit, is seeking a Software Engineer II to join their ML Feature Platform team. With a focus on building delightful, self-serve platforms for developing and serving data, this role is perfect for those passionate about ML enablement. As the remote job market continues to evolve, companies like Affirm are looking for candidates with strong technical skills and a willingness to collaborate and innovate. Before applying, candidates should be prepared to showcase their experience with backend systems, distributed technologies, and a strong understanding of machine learning principles.
Job Description
About the Role
The Software Engineer II role at Affirm is a unique opportunity to join the ML Feature Platform team, responsible for building and maintaining the infrastructure that enables machine learning and decisioning. As a key member of this team, you will work closely with cross-functional teams to design, develop, and launch backend systems that meet the company's growing needs. The ML Feature Platform team is focused on creating a delightful, self-serve platform for developing and serving data, and your work will have a direct impact on the everyday lives of end-users, including machine learning engineers, analysts, and decisioning teams.The role entails collaborating with the tech lead and manager to break down larger projects into individual tasks, delivering them in multiple phases, and ensuring timely delivery of your work. You will also support your peers and stakeholders in the product development lifecycle, participating in ideation, articulating technical constraints, and partnering on decisions that properly consider risks and trade-offs.
The ML Feature Platform team is committed to building a platform that is scalable, reliable, and efficient, and you will play a key role in achieving this goal. You will have the opportunity to work with a range of technologies, including Python, Kotlin, AWS, MySQL, and Kubernetes, and will be expected to contribute to the development of new features and improvements to existing ones.
What You Will Do
- Break down larger projects into individual tasks and deliver them in multiple phases
- Collaborate with cross-functional teams to design, develop, and launch backend systems
- Support your peers and stakeholders in the product development lifecycle
- Participate in ideation, articulate technical constraints, and partner on decisions
- Create and monitor metrics to ensure the operations and availability of your team's artifacts
- Escalate issues when needed and support "keep the lights on" and on-call efforts
- Contribute to the development of new features and improvements to existing ones
- Participate in code reviews and provide feedback to other engineers
- Engage in growth and development activities, such as participation in the interview process
- Collaborate with product management, design, and analytics teams to ensure timely delivery of your work
What We Are Looking For
- 1.5+ years of experience as a software engineer
- Experience designing, developing, and launching backend systems
- Proficiency in one of Python or Kotlin
- Familiarity with the building blocks of distributed systems and technologies like AWS, MySQL, and Kubernetes
- Ability to take a simple problem or business scenario and turn it into a solution that interacts with multiple software components
- Experience writing clear, easily understood, well-tested, and extensible code
- Comfort navigating a large code base, debugging others' code, and providing feedback to other engineers
- Strong verbal and written communication skills
- Experience working in a remote or distributed team environment
- Bachelor's degree in a related field or equivalent practical experience
Nice to Have
- Experience with machine learning or data science
- Knowledge of cloud-based technologies, such as AWS or Google Cloud
- Familiarity with agile development methodologies and version control systems, such as Git
- Experience with containerization technologies, such as Docker
- Certification in a related field, such as software engineering or data science
Benefits and Perks
- Competitive salary and equity package
- Opportunity to work with a range of technologies, including Python, Kotlin, AWS, MySQL, and Kubernetes
- Collaborative and dynamic work environment
- Flexible working hours and remote work options
- Professional development opportunities, including training and conference sponsorships
- Access to a range of benefits, including health insurance, retirement savings, and paid time off
- Opportunity to work with a talented and experienced team of engineers and researchers
- Recognition and reward for outstanding performance and contributions
- Flexible and supportive work environment that encourages innovation and creativity
How to Stand Out
- Tip: Highlight your experience with backend systems, distributed technologies, and machine learning principles in your resume and cover letter.
- Familiarize yourself with Affirm's technology stack and be prepared to discuss your experience with similar technologies.
- Showcase your ability to work collaboratively and effectively in a remote or distributed team environment.
- Prepare to discuss your experience with agile development methodologies and version control systems, such as Git.
- Be prepared to provide examples of your problem-solving skills and ability to break down complex problems into simple solutions.
- Tip: Research Affirm's company culture and values and be prepared to discuss how you align with them.
- Prepare to discuss your experience with data storage, availability, and visibility, as well as your ability to create and monitor metrics.
This is a remote position listed on WFA Digital, the platform for professionals who work from anywhere. Browse more remote jobs across all categories.