About the Role
As a Senior Backend Engineer at Labelbox, you will lead the development of key aspects of our core services, including data I/O, streaming and storage capabilities, as well as critical distributed software architecture that drives our offerings for data labeling. You will develop features for orchestration of large-scale workflows using distributed queues, databases, message brokers and job management mechanisms. You will also drive the evolution of our data infrastructure, focusing on large-scale high-throughput import and export, enabling Labelbox customers to seamlessly stream data from Labelbox to their platform, supporting the development of next generation AI models. You will get to own specific components of product areas, and work end-to-end on projects from design to delivery. You will use your experience and expertise to collaborate cross-functionally with Product, Design, and other stakeholders to transform ideas into shipped features and capabilities to drive scale and adoption of our offerings, as well as enable our customers to be successful.
This role is based in our dedicated tech hubs in San Francisco, CA and Wrocław, Poland. We use a hybrid work model of 2 days in the office per week.
Your Day to Day
- Develop features and capabilities for orchestration of large-scale workflows and data infrastructure including high throughput data I/O, using distributed queues, databases, message brokers and job management mechanisms.
- Collaborate with team members and stakeholders.
- Participate in sprint planning, standups, and other related activities.
- Mentor and guide less experienced engineers while driving initiatives towards completion.
- Particulate in supporting the team’s area of ownership by working with the Support organization to help resolve any customer issues.
- Stay abreast of industry trends and emerging technologies. Analyze, assess and incorporate relevant technologies and ideas as needed.
- Contribute to technical documentation, research publications, blog posts, and presentations at conferences and forums.
- Innovation in AI: Contribute to building new capabilities for an AI platform used by leading AI labs to develop powerful multi-modal large language models (LLMs).
About You
- Bachelor’s degree in computer science or related field. Advanced degree preferred.
- 5+ years of work experience in a software company in backend software engineering, specifically in distributed systems.
- Extensive software design and architecture skills in large-scale systems, including previous projects in this area.
- Strong grasp of databases, queues, job management, message brokers, in-memory caching, streaming data, etc.
- Proficient in multiple storage systems (Relational Databases, Key-Value Stores, Cloud Buckets, etc.)
- Previous experience working with APIs using REST and GraphQL.
- Knowledge of using NodeJS for backend development. Experience with NestJS is preferred.
- Extensive experience with one or more public cloud platforms:
- Google Cloud Platform (GCP) (preferred)
- Amazon Web Services (AWS)
- Microsoft Azure
- Proficient in data structures and algorithms.
- Fluent in programming languages such as Typescript, Java, or Python.
- Demonstrated ability to keep up with industry trends and new developments.
- Excellent communication and collaboration skills.
- Strong sense of ownership.
- Thrive in a fast-paced environment with willingness and ability to dive deep.
- Comfortable with ambiguity and able to break-down high level requirements into actionable tasks in a methodical manner.
- Resourceful and creative problem-solver with an attention to detail who will not hesitate to take initiative and get things done.
- High proficiency in leveraging AI for daily development activities, including but not limited to Cursor, GitHub CoPilot, etc.
Nice to Have
- Familiarity with ReactJS and front-end development techniques.
- An understanding of microservices architecture.
- Knowledge of Google Spanner and ElasticSearch.
- Working knowledge of container orchestration systems (e.g. Kubernetes).
- Some experience with asynchronous messaging systems (Kafka, Google Pub/Sub, AWS SQS, RabbitMQ).
- Good understanding of, or interest in, the overall Data + AI ecosystem and how it pertains to design and architecture of large-scale AI platforms.
- Good understanding of memory management and related optimizations in large-scale systems.
- Familiarity with DevOps tools, such as ArgoCD, CodeFresh, and DataDog.
Engineering at Labelbox
We build a comprehensive platform and end-to-end tool suite for AI system development. We believe in providing the best user experience at scale with high quality. Our customers use our platform in production environments daily to build and deploy AI systems that have a real positive impact in the world.
We believe in collaborative excellence and shared responsibility with decision making autonomy wherever possible. We strive for a great developer experience with continuous fine tuning. How we work is one of the cornerstones of engineering excellence at Labelbox.
We learn by pushing boundaries, engaging in open debate to come up with creative solutions, then committing to execution. We continuously explore and exploit new technologies, creating new and perfecting existing techniques and solutions. Making customers win is our North Star.