Niall St John, Developer in Southwell, United Kingdom
Niall is available for hire
Hire Niall

Niall St John

Verified Expert  in Engineering

Software Developer

Location
Southwell, United Kingdom
Toptal Member Since
February 6, 2017

Niall is a lead full-stack engineer based in the UK. He has been building web applications for over 15 years, specializing in UX architecture in SaaS applications utilizing JavaScript frameworks such as React. Niall believes in a team-working culture where engineers feel supported to grow and produce their best work. He is proficient in JavaScript (Node.js), PHP, and SQL/NoSQL database systems.

Portfolio

Comparison Expert
Apache, PHP, NPM, Webpack, TypeScript, Redux-Saga, React
River Island
Grunt, Git, JavaScript, CSS3, HTML5
Gumtree (eBay Classifieds Group UK)
Grunt, Git, JavaScript, CSS3, HTML5

Experience

Availability

Part-time

Preferred Environment

Node.js, TypeScript, React, Visual Studio, Jira, Redux, PHP, WordPress, WordPress API, Cypress

The most amazing...

...project I've worked on is for a startup in the Web 3.0 space, building a decentralized finance perpetual trading web application.

Work Experience

Principle Engineer

2017 - PRESENT
Comparison Expert
  • Built a single-page web application with React/Redux-Saga that allows users to compare the quality of insurance policies.
  • Implemented a bespoke Webpack installation that compiles SCSS to CSS, React/ES6 to JavaScript ES5—minified all to CSS and TypeScript.
  • Supported the back-end team with API assistance when required.
  • Worked with the designer to ensure pixel-perfect front-end build was achieved.
  • Discussed tasks with all members of the team and came up with technical solutions that were both practical and scalable.
  • Served as the 1st point-of-contact for all technical issues and used my command-line experience to set up various environments.
  • Integrated Buddy Works continuous integration tool to allow for simple code deployment.
  • Implemented GitFlow to make for more readable branch names and eliminate errors with testing, debugging, and releasing.
Technologies: Apache, PHP, NPM, Webpack, TypeScript, Redux-Saga, React

Lead Engineer

2015 - 2017
River Island
  • Developed new features and functionality for the company's eCommerce website using HTML5, CSS3, and JavaScript. All features are fully responsive, with consideration given to all device sizes, from mobile through to tablet, laptop, and larger monitors.
  • Created a prototype web application for designing and building new features in a test environment; using Grunt JavaScript, and Handlebars JS. This allowed us to work with stakeholders to fine-tune new features for the website.
  • Built, as part of the MVT (multivariate testing) team, a number of MVT/A&B testing features. We used Maxymiser to correlate and measure the success/conversion of new features into additional sign-ups and sales.
  • Worked through tasks using Jira and communicated directly with project managers, designers, back-end developers, and stakeholders to that ensure all work was done correctly and within scope.
  • Helped delegate the workflow to junior and mid-level developers and provided support and advice where needed.
Technologies: Grunt, Git, JavaScript, CSS3, HTML5

Lead Developer

2014 - 2015
Gumtree (eBay Classifieds Group UK)
  • Rebuilt the entire front-end from scratch. This meant dropping the entire front-end codebase and researching the technologies required for the new build. The website was to be 100% responsive, which meant that each feature had multiple considerations.
  • Developed all functionalities and features as standalone encapsulated modules. We used HTML5, CSS3, JavaScript as the core languages for the new components.
  • Worked with Java back-end developers to ensure that specified data was displayed in the correct format.
  • Wrote unit tests with Jasmine to ensure the validity of the front-end code.
  • Ensured that all code was version-controlled using Git and uploaded to Gumtree's private repository. New features were developed in stand-alone feature branches until fully tested and bug-fixed.
  • Used Jenkins as our continuous integration tool for the code that is built on the server, as well as ensuring that all the back-end and front-end unit tests ran so that the full functionality of the website was maintained.
  • Ran Grunt tasks used for the automated processing of Compass SASS (for the CSS compiling) as well as JavaScript files concatenation, and also linting the CSS and JS for correct syntax. This allowed for consistent code-writing by all developers.
  • Kept the documentation up-to-date to allow other developers to work on any of the components.
Technologies: Grunt, Git, JavaScript, CSS3, HTML5

Senior PHP and Front-end Developer

2011 - 2013
Living Group
  • Managed servers for multiple websites for hedge funds. All servers used Plesk and the version control at the time was SVN. Towards the end of my placement there, the company was beginning to transition projects over to Git.
  • Developed both the back-end database/code-base as well as the front-end client-side website using HTML5, CSS3, and JavaScript.
  • Used Photoshop to cut and slice PSDs from the designers for the purpose of building them into HTML5.
  • Used the terminal for command lines for SSH into the servers.
Technologies: Git, Command-line Interface (CLI), JavaScript, CSS3, HTML5, PHP

PHP and Front-end Developer

2010 - 2011
Precedent
  • Developed websites in HTML5, CSS3, and JavaScript.
  • Worked with graphic and digital designers to convert Photoshop PSDs into fully functional websites.
  • Worked with MySQL Workbench to configure relational databases for the PHP back end.
  • Tracked bugs using Jira.
Technologies: Git, CSS3, HTML5, PHP

PHP Developer

2008 - 2010
Propeller Communications
  • Developed and maintained a PHP codebase for multiple eCommerce websites. Wrote PHP classes for basket and checkout. Implemented SagePay payment API, as well as tested thoroughly to ensure that all applications go through successfully or correctly fallback to user-friendly error-messaging.
  • Worked directly with the front-end team to establish requirements and ensured that the correct data was retrieved from the database and passed on in the correct format.
  • Maintained and configured websites using MySQL Workbench. Designed and created the relationships between tables in the database as well as writing and maintaining PHP classes to communicate with the database.
  • Worked directly with account managers and clients to ensure that all functionality worked as expected and that all requirements were fulfilled.
  • Discussed with other developers about new and innovative methods for improving our code and workflow; as well as providing feedback to management on potential new technology.
Technologies: JavaScript, CSS3, HTML5, PHP

Driver Buddy

https://www.driverbuddyapp.com/
Driver Buddy is a new online tool that allows drivers to receive free email and SMS notifications when their vehicle MOT and road tax is due.

The web app uses React/Redux on the front end and AWS, Node.js, and Lambda on the back end.

The marketing website uses Next.js (React) and compiles to flat HTML but is all written in React.

Comparison Expert

Comparison Expert is a subscription-only web app for financial advisers to compare the Critical Illness policies of various insurers in the market.

The tool uses a React front end and PHP back end for the API. I developed and built the front end with React/Redux-saga and also implemented the deployment process with the continuous integration tool Buddy (App.buddy.works).

I also helped with the PHP API whenever resources were low.

Contract UI/UX Engineering Team Manager

http://Bluefin.io
I have been working for a startup in the Web 3.0 space who are building a decentralized finance perpetual trading web application. This allows users to connect a Non-custodial crypto wallet and trade on various markets, including BTC/USDC and ETH/USDC. My role has been to take ownership of all front-end deliverables and ensure quality assurance from end-to-end.

Consultant Lead Front-end Engineer

http://Demostack.com
I worked with the two founders of a new startup company in 2020 to build a web application from scratch that recorded clients' websites, allowed the user to make DOM-heavy manipulations, and then re-play the new altered DOM as a "demo." The project was built using the latest React/Redux/Saga/TypeScript environment.

I helped grow the engineering team from just myself to over 40 engineers. Throughout the two-year position, I designed and configured the code infrastructure and the end-to-end testing platform. This involved a multitude of unit tests and Cypress UI tests to ensure the quality and integrity of the application.

• Consulted and built a web application using Webpack, React, TypeScript, and Redux from scratch. This application involved heavy DOM manipulation and state management.
• Built and configured end-to-end testing framework, including unit and Cypress tests.
• Implement React RTK and set up local API for communication with the back end.
• Advised on infrastructure and implementation of new features, including recommending tech stack and third-party modules/frameworks.
• Helped grow and build their internal team of engineers, including team management and engineer mentorship.

Languages

HTML, CSS, JavaScript, PHP, TypeScript, HTML5, CSS3, Python, SCSS

Frameworks

Redux, Tailwind CSS, Cypress

Libraries/APIs

React, Node.js, Redux-Saga, WordPress API

Tools

Plesk, Parallels Plesk Panel, Webpack, Apache, Gulp, Grunt, Basecamp, SourceTree, PhpMyAdmin, Sequel Pro, Git, Webpack 4, Visual Studio, NPM, Jira, GitHub

Paradigms

Agile, Kanban, Waterfall Development

Platforms

Linux, Amazon Web Services (AWS), WordPress

Storage

MySQL, PostgreSQL

Other

Optimization, Client Management, Command-line Interface (CLI), ES6 Promises, APIs, Web3, PostgreSQL 9

2005 - 2008

2:1 BSc Hons in Computer Science

Nottingham University - Nottingham, UK

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring