Job Opportunities

Software Engineer

  • Job ID: 2023-13
  • Location: Madrid, Spain
  • Job Type: Full time

Nommon is a research-intensive technology company that provides decision support solutions for the transport and mobility market and other sectors where geospatial information plays a key role, such as smart cities & urban planning, retail & geomarketing, and energy & environment. Nommon’s solution portfolio includes two types of products:

  • Data products: over the past decade, Nommon has been a pioneer in the application of big data and AI to population behaviour analysis. We have developed a variety of cutting-edge solutions that mine and analyse anonymised geolocation data from mobile devices and blend them with other data provided by our clients or available from public databases to provide high-quality trip matrices, footfall indicators, and other actionable information on people’s activity and mobility patterns.
  • Software products: in recent years, Nommon has extended its product portfolio with different SaaS solutions that combine mobility data, predictive models and optimisation techniques to provide our clients with decision support systems that help them analyse alternative strategies and management actions in complex and uncertain environments.

As part of our expansion plans, we are looking for a Software Engineer (at least 5 years’ experience) to join our Technologies and Software Engineering department in Madrid.

Job description

You will work alongside an international, multidisciplinary team of talented researchers, product engineers, developers and consultants to implement innovative data analysis software. Responsibilities include:

  • Develop and test methods, algorithms and tools for the integration, management and analysis of data originated from multiple distributed sources. Main technologies: Python, PyUnit, Cython, Python data Stack: (Pandas, Numpy, Scipy, Scikit-learn, Polars), Spark, Dask and Databases (Postgres, Mongo).
  • Contribute to every stage of the software life-cycle: requirements management, design, coding, testing, deployment and maintenance. Main technologies: Git, UML, software design patterns, CI/CD & DevOps principles and tools, Jenkins.
  • Contribute to the continuous improvement of software engineering processes and methodologies.
  • Contribute to the definition of innovative products, services and business models.

Minimum requirements


  • MSc in Computer Science or any other relevant engineering field.
  • Proficiency in one or more of the following programming languages: Python, Java, C/C++.
  • Strong algorithmic, programming and computational problem-solving skills.
  • Good understanding of software engineering processes, procedures, methodologies and tools.
  • Ability to speak, understand and write Spanish and English.

Nice to have, but not indispensable

  • Experience/knowledge of geospatial analysis domain and libraries.
  • Experience/knowledge in the design, implementation and optimisation of data processing solutions using big data frameworks such as Spark or Hadoop.
  • Experience/knowledge in cloud environments deployments AWS, GCP or Azure.
  • Experience/knowledge in web application development (full-stack) using technologies such as Django and Angular.
  • Experience/knowledge in relational and No-SQL databases and data warehousing.
  • Experience/knowledge in application server administration, computing environments, storage and networking.

Salary and benefits

  • Annual salary: 44.000 € – 55.000 €.
  • Long term and stable position.
  • Regular performance and salary reviews.
  • Flexible working hours and possibility to work remotely up to 2 days per week.

We always reach out to all applicants, so wait for our call or e-mail over the next few days after your application is submitted.