Job Advertisement: Software Engineer (Backend & Data Systems | AI-assisted Frontend)

Organisation: UrbanBetter
Contract: Fixed-term consultancy (1 year; renewable for a further 2 years)
Location: Fully remote (GMT ±3 hours)
Reporting to: Programme Manager (UrbanBetter)

Works closely with: MEL Lead, Training & Capacity Lead, Research & Methods Lead, Communications Lead

Consultancy fee: £3,333 per month (inclusive of all taxes and statutory obligations), depending on experience.

UrbanBetter is a small, mission-driven non-profit organisation. While we cannot match commercial-sector salaries, we offer high levels of autonomy, meaningful technical contribution, flexible working, and the opportunity to build systems that directly support healthier, climate-resilient cities.

Role overview

UrbanBetter is seeking a backend-strong Software Engineer consultant to support the development, maintenance and ongoing improvement of UrbanBetter’s digital platforms across Cityzens and the UrbanBetter Academy. This consultant will support the design, build, and maintenance of the backend systems, data pipelines, and cloud infrastructure that support citizen science, training delivery, monitoring and evaluation, and data-driven advocacy.

  • The consultant will work across:
  • The Cityzens training and organising portal, and
  • The UrbanBetter Academy knowledge and training portal
  • Core operational systems, including data pipelines and CRMs

Helping to ensure that these platforms are robust, secure, interoperable, and able to scale as UrbanBetter grows. While the role is primarily backend-focused, the consultant will also contribute to frontend development using AI-assisted coding tools, working alongside specialist UX/product designers and QA contractors engaged on a part-time basis.

This assignment is intentionally designed as a backend-centred generalist role. The consultant is not expected to be a specialist UX designer or QA engineer, but should be comfortable implementing and iterating on frontend functionality as part of day-to-day delivery.

The consultant will use AI-assisted development tools to scaffold, extend, and modify user interfaces, implement functional frontend components, and support end-to-end feature delivery. Specialist UX/product and QA contractors will be engaged on a part-time basis to refine interface design, improve usability and accessibility, and conduct structured testing.

The consultant is not expected to lead visual design, branding, or UX research, but should be comfortable implementing and iterating on frontend components with guidance and AI-assisted tools.

In this model, the Software Engineer consultant provides backend development support, technical input, and systems integration across platforms, while UX and QA specialists focus on interface refinement, user experience quality, and validation.

Role purpose

To provide backend development support across UrbanBetter’s backend, data, and cloud systems across Cityzens and the UrbanBetter Academy, enabling reliable training delivery, data analysis, evaluation, and public engagement. The assignment supports the development of digital platforms that are well-architected and maintainable, where data can be analysed and visualised effectively, and where frontend development is supported efficiently through AI-assisted workflows and targeted specialist input.

Main duties and responsibilities

i.) Backend engineering & system development

  • Design, implement, and maintain secure and scalable backend services and APIs using Python (FastAPI or equivalent).
  • Support the development and maintenance of authentication, access control, data validation, and system reliability across UrbanBetter platforms
  • Monitor application performance, uptime, and errors; implement logging and alerting.
  • Address performance bottlenecks in data-heavy or geospatial workflows
  • Integrate backend services with internal databases, external datasets, and third-party APIs.

ii.) Cloud infrastructure & deployment

  • Deploy, manage, and monitor applications on AWS (e.g. EC2, Lambda, RDS, S3).
  • Containerise services using Docker and manage development, staging, and production environments.
  • Implement and maintain CI/CD pipelines (e.g. GitHub Actions) to support secure and reproducible deployments.

iii.) Data engineering & pipelines

  • Design and maintain automated ETL / ELT pipelines linking training activity, MEL data, and citizen-generated datasets.
  • Ensure data integrity, documentation, and performance to support analysis, dashboards, and reporting.
  • Support structured data use across Cityzens campaigns, Academy training, and coalition activities.

iv.) Data protection, privacy & ethical data use

  • Implement data protection, privacy-by-design, and consent-aware data handling practices aligned with GDPR and international best practice
  • Support anonymisation, aggregation, and safe data-sharing workflows for advocacy and public reporting.

v.) Frontend contribution (AI-assisted)

  • Contribute to frontend development using AI-assisted coding tools (e.g. Claude Code, GitHub Copilot, Cursor) to scaffold, extend, and modify UI components.
  • Implement functional frontend features such as dashboards, forms, and integrations, prioritising correctness, accessibility, and maintainability.
  • Collaborate with UX / product design contractors to refine interface design and user experience.

vi.) Data visualisation & dashboards

  • Work with the MEL Lead to define metrics and build dashboards using tools such as Superset, Redash, Power BI, or similar.
  • Support analytical and geospatial visualisations (e.g. Mapbox, Leaflet) for training, evaluation, and advocacy use.

vii.) Web platforms & integration

  • Maintain and customise UrbanBetter websites and portals, including WordPress-based sites, ensuring secure integration with backend systems and analytics tools.
  • Support multilingual access (e.g. French, Spanish) and mobile responsiveness.

viii.) Collaboration & technical stewardship

  • Act as a technical point of contact across Cityzens and UrbanBetter Academy digital systems.
  • Scope, brief, and collaborate with part-time UX/product and QA contractors, reviewing work for technical soundness and integration.
  • Document system architecture, data flows, and deployment processes.
  • Uphold best practice in data security, ethical data use, and responsible technology development.

ix.) Technical continuity & resilience

  • Support the development of systems that are well-documented, modular, and easy for others to understand and maintain
  • Ensure handover-ready documentation for core services, data pipelines, and deployment processes
  • Maintain clear onboarding documentation for direct report(s), future engineers or contractors

 

Person specification

Essential experience

  • Strong experience in backend software development, with demonstrated proficiency in Python (FastAPI or similar).
  • Hands-on experience deploying and managing applications on AWS.
  • Experience designing and maintaining data pipelines (ETL/ELT) and integrating multiple data sources.
  • Experience with containerisation (Docker) and setting up CI/CD workflows.
  • Experience supporting analytics, dashboards, or data-driven reporting systems.
  • Proven experience with data pipeline design, ETL/ELT processes, and system integrations.
  • Solid experience with database design (SQL and NoSQL) and version control (Git).
  • Experience working with sensitive or human-subject data is an advantage

 

Essential skills

  • Strong backend engineering judgement, with attention to security, scalability, and maintainability.
  • Working knowledge of React, JavaScript, or TypeScript, sufficient to implement and adapt frontend components.
  • Experience working with WordPress alongside custom application code.
  • Ability to operate as a generalist with a clear backend focus, supporting systems end-to-end
  • Comfort using AI-assisted development tools to support frontend implementation and iteration.
  • Ability to translate programme, research, and evaluation needs into technical solutions.
  • Strong problem-solving skills and ability to work independently in a small organisation.

 

Desirable experience

  • Experience with geospatial data or mapping frameworks.
  • Experience in civic tech, public health, climate, or NGO environments.
  • Experience contributing to or maintaining open-source tools, or building reusable components for public-interest tech.

 

Qualifications

  • Degree or equivalent professional experience in computer science, software engineering, data engineering, or a related field.

 

Additional requirements

  • Availability to work fully remote within GMT ±3 hours.
  • Interest in applying technology to health, climate, and urban development challenges.
  • Commitment to inclusive, ethical, and responsible data and technology practices.

 

How to apply

Interested candidates should apply using the application form to submit the following:

  1. CV
  2. Cover letter outlining:
    1. Your motivation for applying (word limit – 250 words)
    2. What interests you about applying your technical skills to UrbanBetter’s work on healthy, climate-resilient cities (word limit – 250 words)
  3. Links to 2-3 examples of relevant technical work you have built or contributed to. For each example, please include a short explanation describing:  (word limit for each example – 250 words).
    1. What the system does.
      Your role in building or maintaining it.
    2. What would you improve if rebuilding it today
  4. Acceptable formats for sharing links to relevant technical work include:
    1. GitHub or GitLab repositories.
    2. Deployed applications.
    3. API documentation.
    4. Data pipeline code.
    5. Dashboards or visualisation work.
  5. Short written responses (max 250 words each) to the following questions:
    1. Question 1 – Describe a system you have built or maintained involving backend infrastructure, APIs, or data pipelines. What were the key design trade-offs?
    2. Question 2 – How do you currently use AI-assisted development tools, e.g. Claude Code, Copilot, and Cursor in your workflow? Please give concrete examples. If you do not currently use them regularly, explain how you would approach integrating them into your development process.

Applications should be submitted by 31 March 2026. Only shortlisted candidates will be contacted.

Subscribe to our newsletter

Job Advertisement: Software Engineer (Backend & Data Systems | AI-assisted Frontend)