Point your AI agent at freehire and let it find you a job.

Get the CLI →

emagine

NewBe an early applicant

Software Engineer for AI Project

Posted
Discussion

Summary

emagine is hiring a Python Software Engineer for an AI project in Lisbon: designing, building, and maintaining scalable Python applications, contributing to architecture, code reviews, and cloud deployments within an agile, AI product-focused team. Core stack: Python (Django/Flask), SQL/NoSQL databases, REST APIs, Git, Docker/CI-CD, and cloud platforms (GCP, AWS, or Azure).

We are looking for a skilled Python Software Engineer to design, develop, test, and maintain scalable software solutions. You will work closely with cross-functional teams to deliver high-quality features, improve system reliability, and contribute to technical excellence across the AI innovation team.

This role is ideal for engineers who enjoy solving real-world problems, writing clean and maintainable code, and collaborating in an agile, AI product-focused environment.

Main Responsibilities:

  • Design, develop, and maintain high-quality, scalable, and maintainable Python applications.

  • Contribute to architecture and technical design discussions, with an eye toward performance, reliability, and long-term maintainability.

  • Write clean, well-tested, and well-documented code, following team standards and best practices.

  • Participate actively in code reviews, providing constructive feedback and continuously raising code quality.

  • Integrate, test, debug, and maintain software across development, staging, and production environments.

  • Collaborate with product managers, designers, and other engineers to translate requirements into technical solutions.

  • Evaluate, estimate, and help prioritize feature and technical improvement requests.

  • Identify and address performance, scalability, and security issues.

  • Contribute to improving development processes, tooling, and engineering practices.

  • Maintain clear and up-to-date technical documentation.

Key Requirements:

  • Bachelor’s degree in Computer Science, Engineering, or a related field.

  • 3+ years of professional experience developing software with Python.

  • Strong understanding of software engineering fundamentals (data structures, algorithms, design patterns).

  • Experience with Python web frameworks such as Django, Flask, or similar.

  • Solid experience working with relational and/or NoSQL databases.

  • Familiarity with RESTful APIs, integration patterns, and basic distributed system concepts.

  • Proficiency with Git and collaborative development workflows (pull requests, code reviews).

  • Experience working in Agile/Scrum development environments.

  • Good understanding of testing practices (unit, integration, automated testing).

  • Experience deploying or operating applications on cloud platforms (GCP, AWS, or Azure).

  • Familiarity with CI/CD pipelines, containerization (e.g. Docker), or infrastructure-as-code concepts.

  • Strong problem-solving skills and ability to work autonomously.

  • Clear communication skills and ability to collaborate effectively in a team.

  • Fluent in English (written and oral).

Nice to Have:

  • Exposure to front-end technologies such as HTML, CSS, and JavaScript.

  • Interest in system performance, observability, and reliability.

  • A growth mindset, curiosity, and willingness to learn new technologies.

Other Details:

This position offers the opportunity to work in a dynamic environment, focusing on AI technology.

Skills

What Middle Software Engineering jobs ask for — and how much of it you have →
Apply

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available