Senior Software Engineer
Role details
Job location
Tech stack
Job description
As a Senior Software Engineer at Ultralytics, you'll play a pivotal role in developing and maintaining the Ultralytics HUB, a leading platform for cloud training and deployment of YOLO AI models., * Design and implement secure, scalable, and maintainable event-driven web solutions that integrate seamlessly with cloud services (GCP, Azure, AWS).
- Contribute to distributed systems where services communicate through events rather than tightly coupled APIs.
- Develop and maintain GitHub Actions for CI/CD pipelines tailored for cloud deployments involving Docker and Kubernetes.
- Ensure the reliability and efficiency of application deployments using cloud functions and various orchestration tools.
- Collaborate with ML teams to embed advanced machine learning models into our cloud solutions effectively.
- Optimize cloud resources to enhance performance and minimize costs.
- Provide technical guidance and support to ensure best practices in cloud development and deployment.
Your strategic vision and technical expertise will be essential in supporting Ultralytics' mission of delivering top-tier machine learning tools and models to the community. Your profile
Requirements
Preferred skill set:
- 7+ years experience with Python.
- Skilled in designing, developing, maintaining and debugging event-driven systems, asynchronous workflows. Comfort working in orchestration/choreography setups.
- Proficient in leveraging Google Cloud Platform for scalable and secure cloud solutions.
- Deep expertise in Object-Oriented Programming (OOP) and Hexagonal architecture principles.
- Strong knowledge of concurrency and distributed transaction management.
- Understanding of NoSQL databases such as MongoDB
- Hands-on experience building production systems with message brokers like Kafka, RabbitMQ, or Google Pub/Sub
- Familiarity with Domain-Driven-Design (DDD) concept is a valuable asset.
- Basic understanding of frontend technologies such as Next.js is an added advantage.
- Strong ability to create clear, structured, and comprehensive documentation and diagrams for feature development as an integral part of the development process.
- Proficient in CI/CD pipeline construction, particularly with GitHub Actions.
- Bachelor's degree or higher in Computer Science or related fields.
Benefits & conditions
- Competitive salary, depending on experience and location
- Time Off: 24 days paid vacation, your birthday off, plus local holidays
- Home set up Allowance ($550)
- MacBook Air as your work device
- Flexible work environment with hybrid and remote options
- The candidate must be eligible to work as an independent contractor in their home country (handbook for more detail)
Ultralytics Handbook Comprehensive guide to our company's mission, vision, values, and operational practices. This handbook is designed to provide key insights and resources for our (future) team members, collaborators, and community to align with Ultralytics' core principles. Link: https://handbook.ultralytics.com