Software Engineer II, Backend (Trust and Safety Foundations)
AffirmFull Time
Mid-level (3 to 4 years)
Candidates must possess strong proficiency in core ML methods, including model architectures, embeddings, and NLP/language models, with expertise in Python and developing clean, reusable code. Familiarity with key ML libraries such as scikit-learn, PyTorch, XGBoost/LightGBM, and Transformers is required, along with expert-level model evaluation and impact assessment skills. Proven experience in deploying ML models to serving environments, proficiency with data/feature pipelines, and operating in cloud environments (AWS, GCP, Azure) are essential. Strong project management and collaboration abilities, including scoping, managing, and delivering projects on time, are necessary, as is the ability to navigate ambiguity and autonomously build ML solutions. Excellent verbal and written communication skills, with proficiency in writing design docs and clearly communicating technical ideas, are also required. Nice-to-have skills include advanced ML expertise in areas like graph methods, anomaly detection, sequence modeling, and generative AI, as well as experience in trust & safety or risk management domains.
The Senior Machine Learning Engineer will dive deep into critical Trust & Safety problem areas, working closely with stakeholders to understand problems and scope solutions. They will build and iterate on machine learning models, becoming a subject matter expert and collaborating with cross-functional partners to test solutions and gather feedback. Responsibilities include collaborating with engineering and infrastructure teams to deploy models to production, monitoring model performance, and understanding customer impact to drive iteration. The role involves incorporating cutting-edge machine learning and AI into the detection suite to stay ahead of emerging threats and ensure the Trust & Safety model suite remains advanced. Additionally, the engineer will drive operational excellence by contributing to shared infrastructure, data pipelines, monitoring systems, and documentation, while also sharing knowledge and experience through pair programming, code reviews, and presentations to amplify team impact.
Online platform connecting freelancers and clients
Upwork connects freelancers with clients looking for various services in the gig economy, which focuses on short-term contracts instead of permanent jobs. The platform allows freelancers to create profiles that showcase their skills, while clients can post job listings for specific projects. Freelancers bid on these projects, and clients choose the best candidates based on proposals and reviews. Upwork earns revenue through service fees charged to freelancers based on their earnings, with a tiered structure that rewards long-term client relationships. The platform also offers premium memberships and additional services for enhanced visibility and access to job listings. Upwork provides tools for time tracking, invoicing, and project management, making it easier for both freelancers and clients to manage their work and payments. The goal of Upwork is to facilitate successful project completion by bridging the gap between freelancers and clients.