EL1 LH-08522 Senior AWS Software Engineer (Developer)
Job Description:
Australian Citizens residing in Australia only respond.
Job details
The National Museum of Australia is rebuilding nma.gov.au as a modern digital experience platform (DXP). Content is moving from Squiz Matrix (nma.gov.au) and GovCMS/Drupal (Digital Classroom) into Contentstack, a headless CMS hosted in the Contentstack AU region. The Museum has chosen Astro, with TypeScript, as the front-end framework for the new site.
The Senior Full Stack Developer will assist with the integrations between the website and the Museum's collection and business system. The role designs, builds and operates the APIs, serverless functions and identity, search and AI services on AWS (Amazon API Gateway for Museum APIs, Amazon Cognito for visitor identity, Amazon OpenSearch Service for site and collection search, and Amazon Bedrock for AI services) that the Astro front end consumes, and works with the Frontend Developer on the server-side and data-fetching parts of the Astro build. The role also helps maintain the GitHub Actions and Contentstack Launch pipelines.
The role joins an Agile/Scrum team, led by an Agile Delivery Lead and working alongside the existing team, UX researchers and Museum content and collection specialists.
Key duties and responsibilities
The successful candidate will:
- Design, build and operate APIs published through Amazon API Gateway and backed by AWS Lambda and other serverless services, including OpenAPI contracts, stages and custom domains, Cognito and Lambda authorisers, usage plans, API keys and throttling, and clear documentation for the Frontend and future developers.
- Implement authentication and authorisation using Amazon Cognito, including user pools and app clients, managed login with passwordless sign-in, OIDC and OAuth 2.0 flows (authorisation code with PKCE for visitors, client credentials with resource server scopes for partners), token validation in the Astro server layer, Lambda triggers and least-privilege access to APIs.
- Design, build and tune site and collection search on Amazon OpenSearch Service, including index mappings and analysers, ingestion pipelines from Contentstack webhooks and published collection data, index aliases for zero-downtime reindexing, facets, synonyms, relevance tuning and hybrid (keyword and vector) search where it adds value, access control, and sizing and cost management.
- Build AI services on Amazon Bedrock behind API Gateway for staff applications and batch jobs, including Bedrock Guardrails, Knowledge Bases and retrieval-augmented generation, logging, quotas and cost controls, and evaluation of output quality, in line with Museum AI and data classification requirements.
- Build and manage AWS infrastructure as code (for example AWS CDK, CloudFormation or Terraform) within the Museum's multi-account AWS environment, applying least-privilege IAM, AWS Secrets Manager and AWS KMS, with Amazon CloudWatch and AWS X-Ray monitoring, alarms and dashboards.
- Design, build and maintain integrations between the website and our custom Collection Management pipeline (via REST), Tessitura (REST API or TNEW) and Shopify, including data mapping, caching, rate limiting, error handling, logging and monitoring.
- Build the server-side parts of the Astro site, including data fetching from Contentstack and Museum APIs, server endpoints, server-rendered and on-demand routes, and middleware, in line with the agreed Astro rendering approach (static, server or hybrid output) on Contentstack Launch.
- Develop against the Contentstack Content Delivery API, Content Management API, GraphQL API and TypeScript SDKs, including webhooks and support for Live Preview and Visual Builder in the Astro build.
- Support the migration with scripting, transformation and validation tasks for content and asset migration into Contentstack, including URL mapping and redirects.
- Help maintain CI/CD pipelines in GitHub Actions for AWS infrastructure and services and for Contentstack Launch, across development, test, staging and production environments, including secrets management, automated tests and quality gates.
- Conduct code reviews for back-end and integration code, uphold coding standards, and write unit, integration, contract and end-to-end tests.
- Contribute technical analysis and prototypes to remaining architecture decisions and record them in architecture decision records.
- Prepare release notes, change requests for CAB, support production releases and hypercare, and hand over documentation and knowledge to Museum staff.
- Participate in Agile ceremonies, estimate and refine backlog items, and communicate technical risks and trade-offs clearly to non-technical stakeholders.
Required Skills:
Logging Cost Management Content Management OAuth REST API CI/CD pipelines Data API Support Access Control Search Access Development REST Classification AI Authentication Pipelines Shopify Github Actions GraphQL Analysis Reviews Validation CI/CD Developers Architecture Agile Infrastructure Integration Scrum AWS Github Records TypeScript Software Documentation Design Business Management