Senior Software Engineer - Emerging AI Spain Team
Milestone SystemsAbout the role
Are you passionate about harnessing the potential of Artificial Intelligence (AI) to transform industries? Are you eager to be at the forefront of innovation within Milestone’s cutting-edge Video Management System? Join our Emerging AI Team in Barcelona as a Senior Software Engineer and be at the forefront of shaping the future of video management systems, transforming cutting-edge AI research into real- world applications.
As part of the team, you will play a pivotal role in developing, deploying, and maintaining new AI-based products that leverage the latest advancements in computer vision, machine learning, and neural networks. Starting from a validated proof-of-concept, your expertise will be crucial in scaling and refining these concepts into full-scale, production-ready products. By leveraging the latest technologies, you will bridge the gap between concept and reality, unlocking new insights and perspectives for our customers.
We strive to develop and grow people, where honesty and transparency are key among peers. In our department we have a relaxed tone, and all are expected to express their opinion. We are working in self-organized teams and each team is empowered to find innovative solutions.
We encourage people to innovate and think outside the box to the point where the best ideas materialize into products and features. No idea is too small, and all ideas have the potential to make a difference. We believe our developers have the potential and will to innovate and grow the company even further.
We expect you to engage, speak up, and make a difference but always with respect for your colleagues.
Job Summary:
We are seeking a highly skilled and experienced Software Engineer to join our team. As a Senior Software Engineer, you will be responsible for designing, developing, testing, and maintaining high- quality software applications using C++, Python, Docker, Kubernetes and other relevant technologies with a focus on AI and machine learning.
As a member of our team, you will work closely with colleagues to identify and prioritize project requirements and collaborate with other engineers to ensure the successful delivery of projects.
Responsibilities:
- Design, develop, test, and maintain software applications using C++ and Python.
- Implement AI-powered software solutions that meet project requirements and are scalable, efficient, and reliable.
- Collaborate with cross-functional teams to identify and prioritize project requirements using Agile methodologies.
- Participate in Scrum meetings and continuous improvement activities to refine our development process.
- Participate in code reviews and ensure adherence to good programming practices.
- Utilize Git and GitHub for version control, collaboration, and tracking changes.
- Troubleshoot and debug software issues using debugging tools and techniques.
- Work with containerized microservices architecture and environments
- Work with Linux-based operating systems and environments.
- Participate in continuous integration and continuous deployment (CI/CD) pipelines.
- Stay up-to-date with industry trends and emerging technologies to drive innovation within the company.
Requirements:
- Educational background in Computer Science or software engineering.
- 5+ years of experience in software development.
- Strong understanding of software development life cycles and good programming practices.
- Experience with C++ and Python programming languages (C# or Golang (or comparable) programmers are welcomed as well).
- Comfortable working with containerization tools like Docker.
- Experience working with Linux-based systems and environments.
- Strong problem-solving skills and attention to detail.
- Excellent communication and collaboration skills.
- Ability to work in a fast-paced environment and adapt to changing priorities.
- Understanding of software testing and debugging techniques.
- Verbal and written communication English skills. English is the working language.
Nice to Have:
- Familiarity with frontend technologies.
- Experience with container orchestration tools (Kubernetes).
- Experience with messaging tools (Kafka).
- Familiarity with DevOps tools (Jenkins, GitHub, CI/CD).
- Hands-on experience working with AI/ML-based products.
- Understanding of GStreamer and multimedia pipelines
- Experience with testing frameworks.
- Knowledge of cloud-based technologies (AWS, Azure, Google Cloud).
- Experience with Agile development methodologies.
- Be an active player in a SCRUM team, collaborating effectively with team members and stakeholders.
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s