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

Get the CLI →

Fullstack Developer

NewBe an early applicant

What is the purpose of the Fullstack Developer’s role?

The Fullstack Developer’s purpose is to help Snapper deliver excellence to its customers across the backend, frontend (web), and applied data spaces — building customer-facing product features on top of the data foundations designed by our data engineering team.

This is a core role in our Development team, building and testing our backend and frontend applications while implementing data pipelines and models in partnership with our data engineering team. You’ll bring proven experience to this role, employing your skillset to help Snapper deliver excellent product to our customers.


Reports to:
Development / Engineering Lead

Direct reports: None

Key relationships: Wider technical team, including our data engineering team, Solution Architecture and DevOps, and the product and design teams

Based in: Wellington, NZ


What does the Fullstack Developer do?

Software development is shifting, with a wider coverage of the technology spectrum made possible through AI. Snapper encourages developers to go deep in one particular space and this role would ideally focus on data engineering.

  • Building and maintaining data pipelines and ETL processes in collaboration with the data engineering team
  • Developing clean, clear and scalable APIs that connect our frontend, backend, and data layers
  • Applying established data models and warehouse patterns to product features, and feeding back a builder’s perspective on them
  • Developing and testing applications, including following and improving best practices for backend, frontend, and data development
  • Pair programming with other developers, sharing and building skillsets across the team
  • Working closely with our security, design, data engineering, DevOps, product and QA teams to build the best products we can
  • Accurately translating user and business requirements into functional code
  • Contributing to planning new projects in collaboration with our wider development and product teams
  • Providing constructive feedback and support to the team via PR reviews
  • Following and improving our processes for CI/CD and its configuration
  • Contributing to proof-of-concept projects to explore new technologies ahead of implementation
  • Championing our release processes to ensure deployments are planned and executed efficiently


What will help you to be successful in this role? ​

This role sits at intermediate to senior level — you’ll bring proven, hands-on experience rather than needing to build the fundamentals on the job:

    • Proven, production experience with Java/Python/Angular/TypeScript
    • Practical experience with Python/PySpark for data engineering tasks
    • Experience with data persistence and ETL best practice
    • Solid AWS experience (Glue, DynamoDB, RDS, Lambda)
    • Comfortable acting as a peer reviewer, giving and receiving direct technical feedback
    • Experience with testing frameworks such as JUnit, Cucumber, Cypress
    • Agile Development experience, specifically Scrum
    • Understanding of state management and data modelling patterns
    • Familiarity with CI/CD and DevOps best practice

You will need 3–6+ years’ professional development experience. You’ll bring genuine curiosity about customer needs and strong empathy for the people who rely on our products, confidence communicating clearly across a diverse team, and comfort working in a fast-paced, changing environment.

To fit with the team, your communication skills will be paramount; you’ll be able to lay out arguments in a well-structured, data-informed, written narrative, and to autonomously query & extract insights from the available data. You’ll know when a technical solution or an emerging trend can be relevant to the challenges at hand, and have firm beliefs held loosely in an open, collaborative mindset.


We want you to do well, and it looks like this: ​

You write reliable, maintainable code that powers reliable transit experiences. You build and improve systems that are stable, performant, and well-tested, identifying areas of improvement to make our internal processes and systems more effective, efficient and impactful. Your work helps keep our products working effectively, underpinning public transit networks doing what they are expected to, getting users to work, school, and home without issue.

You’re part of a team that solves problems. You think through how your solutions affect the whole system. You’re curious about how the Mosaiq technology connects with real-world data, APIs, and other systems across public transport networks. You ask good questions, share ideas, and help shape technical decisions.

You keep things moving without breaking stuff. You balance speed and care, delivering small, well-scoped improvements that make the system better over time. You champion proper process for the right reasons, using version control, testing, observability, and deployment tools responsibly. You value uptime, data accuracy, and doing things in a way future-you would appreciate.

You grow, and help others grow. You regularly seek feedback and offer it with respect and clarity. You take ownership of your own journey, learn from mistakes, and share your knowledge openly — whether through pair programming, PR reviews, or improving documentation and tooling.

You see the power of being in it together. Your communication is well thought out and clear — and works across the team and time zones. You respect deadlines but raise flags early when things change. You default to trusting others and show up in a way that earns that trust back.

See also

Full-Stack 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