Senior Full Stack Software Engineer
Our client is seeking a highly capable Senior Full Stack Software Engineer to join their growing technology team. This role is responsible for designing, developing, and maintaining scalable web applications and cloud-native services across the entire technology stack.
The successful candidate will take ownership of backend services built on Node.js, TypeScript, PostgreSQL, and AWS , while also contributing to modern React and Next.js front-end applications. They will work closely with stakeholders to deliver high-quality software, improve platform performance, and help modernise legacy components.
This role suits a proactive engineer who enjoys solving complex technical problems, communicates effectively within a remote team, and takes ownership of delivering production-ready software.
Key Responsibilities
Software Development
- Design, develop, test, and maintain scalable full-stack applications using Node.js, TypeScript, React, and Next.js.
- Build and maintain RESTful APIs and backend services supporting customer-facing applications.
- Develop responsive, intuitive, and high-performing user interfaces using React.js.
- Implement reusable, maintainable, and well-documented code following engineering best practices.
- Participate in architecture discussions and contribute to technical design decisions.
Cloud & Infrastructure
- Develop and maintain cloud-native applications hosted on AWS.
- Build and manage serverless solutions using AWS Lambda.
- Support and maintain Ubuntu-based EC2 instances hosting internal applications such as Strapi and Meilisearch.
- Manage PostgreSQL databases hosted on Amazon RDS.
- Optimise application performance, scalability, reliability, and security.
- Work with Redis for caching and performance optimisation where appropriate.
Platform Modernisation
- Assist in modernising legacy applications and frameworks.
- Contribute to the migration away from Redux Saga and legacy Redux implementations toward modern state management approaches.
- Recommend improvements to application architecture and engineering processes.
- Continuously improve code quality, maintainability, and development standards.
Collaboration & Delivery
- Participate in Agile Scrum ceremonies including sprint planning, stand-ups, reviews, and retrospectives.
- Collaborate closely with Product Owners, stakeholders, and fellow engineers.
- Provide regular updates on work progress, risks, blockers, and delivery timelines.
- Review pull requests and contribute to maintaining high engineering standards.
- Mentor junior developers where appropriate.
Continuous Improvement
- Evaluate emerging technologies and recommend adoption where appropriate.
- Improve CI/CD practices and deployment workflows.
- Contribute to engineering documentation and knowledge sharing.
- Support production deployments and investigate issues as required.
Required Skills & Experience
Essential
- Bachelor's Degree in Computer Science, Software Engineering, Information Technology, or related discipline (or equivalent practical experience).
- Minimum 6+ years of professional software development experience.
- Strong commercial experience with:
- Node.js
- TypeScript
- React.js
- Experience building REST APIs and distributed applications.
- Strong experience with PostgreSQL.
- Hands-on AWS experience including:
- Lambda
- EC2
- RDS
- Experience with Git and GitHub workflows.
- Strong understanding of software architecture and modern development practices.
- Experience working within Agile/Scrum environments.
- Excellent written and verbal English communication skills.
- Demonstrated ability to work independently in a remote environment.
Desirable Skills
Experience with any of the following will be highly regarded:
- Next.js
- Redis
- Strapi CMS
- Meilisearch
- Serverless Architecture
- CI/CD pipelines
- Docker
- Infrastructure as Code
- Microsoft Dynamics 365 Business Central integrations
- .NET applica