Faris Aziz Profile Picture

Hi, my name is Faris!

I am a Full Stack Software Engineer

MentorCruiseLearn More

Professional Projects

Projects I have worked on in large teams in a professional setting

Fiit Website

Fiit Website - visibility: public

Main Contributions:

  • - Independently lead in depth investigations into the website infrastructure in order to devise upgrade strategies. Migrating our monolithic codebase from legacy (2018) NextJs to the latest release. This helped improve website performance, resource management and developer experience. Additionally, the loading times were improved by over 80% by decreasing the bundle sizes and weight of the static content without sacrificing quality.

  • - Devised data driven proposals to remodel our client facing website’s UI/UX to target a larger set audiences with mobile options around that helped increase conversion rates.

  • - Worked On various features and bug fixes including CMS integration, JSX component development and styling

Fiit Web App

Fiit Web App - visibility: public

Main Contributions:

  • - Lead the efforts for defining requirements for the Beta release of the web app (e.g. changelog integration, feedback system, etc...).

  • - Defined the UX and tech requirements for transitioning our connected TV platform into a web compatible application.

  • - Refactored components to be cross-browser and TV compatible.

Eurosport Connected TV App Demo

Eurosport Connected TV App

Eurosport Connected TV App - visibility: private

Tech Stack: JavaScript - RxJs - CTV - PS4 - Samsung - Amazon Fire TV

Main Contributions:

  • Worked in the full application rebranding.

Including:

  • - Hero design

  • - EPG schedule

  • - Helping prepare the application for the 2020 Olympics.

GCN Connected TV App Demo

GCN Connected TV App

GCN Connected TV App - visibility: private

Tech Stack: JavaScript - RXJs - Connected TV - Amazon Fire TV - Samsung TV

Main Contributions:

  • - Helped develop and integrate a cross-platform compatible text-to-speech accessibility framework for devices such as Amazon Fire TV, Samsung, etc...

  • - Aided in the full UI/UX development. Including writing data mappers that resolve dynamic content from a video management system and integrating a fluid focus management system for in-app navigation.

  • - Worked directly with Figma designs for Hero component integration, video card design implementation.

Skiddle Promotion Centre

Skiddle Promotion Centre - visibility: private

Tech Stack: ReactJs - REST API - JavaScript - CI/CD - Styled Components

Responsibilities

Responsible for aiding in the development of the new ReactJs build of the Skiddle Events Promotion Centre.

Including:

  • - building new features & reusable components (e.g. Auto resolving breadcrumbs).

  • - Integrating unit testing from scratch and maintaining end-to-end tests.

  • - Improving code quality via refactoring and resolving technical debt.

  • - Implementing new code review processes.

Hot Spots

Hot Spots - visibility: public

Tech Stack: JavaScript - NodeJs - Alexa SDK - WebGL - RxJs - AWS

Hot Spots provides an immersive and engaging Voice experience for kids to get fit and active with Alexa.


Hot Spots allows the user to team up with the awesome workout buddy, Fit Fox, who will let you choose the workout difficulty level. Complete your warm up, main circuit and cool down with the help of Fit Fox, who will explain how to perform each exercise and offer your encouragement as you go. Each exercise is based on a 'TABATA' time format, where the user does 20 seconds of exercise, 10 seconds of rest intervals on repeat.


My main contributions: From a conceptualization standpoint I worked on fine tuning the exercise routine, selecting the movements and making it modular using the exercise time format known as TABATA. From a development standpoint I helped build the integration of the Alexa and the WebGL parts (using Rx.js) to allow workout animations to be provided in a flexible JSON format and display correctly with the appropriate intervals. In addition to this I aided in the creation of some APL documents for display interactions.


This fun, immersive and rich audio (and visual) experience was developed in a mixed team of developers and designers for the Beyond Voice Hackathon

Discovery Plus Connected TV App

Discovery Plus Connected TV App - visibility: private

Tech Stack: JavaScript - RxJs - CTV - STB

Main Contributions

  • - Helped develop the text-to-speech accessibility integration for set-top boxes (e.g. Comcast).

  • - Lead the integration of In-App-Purchasing for Comcast devices.

  • - Additionally worked on: performance improvements, UI/UX improvements, bug fixes and cross-platform compatibility.

FX-CLI

FX-CLI - visibility: private

Tech Stack: Bash

A CLI tool I built during my time at FX Digital that consists of globally executable command-line scripts to make it easier to deal with projects and repositories.


Features include:

  • - Installation script (zero hassle setup)

  • - Script Selection (choose the ones that only matter to you)

  • - Automatic update checks for improvements and script upgrades

  • - Easy upgrade command to keep your local scripts in line with the master branch

Open Source Projects

Open source community projects that I regularly contribute to

Raycast Extension - Stripe

Raycast Extension - Stripe - visibility: public

Contributed to an existing Raycast extension and added commands that leverage the Stripe API to allow quick access to dashboard views.

Raycast Extension - Coinbase Pro

Raycast Extension - Coinbase Pro - visibility: public

Tech Stack: TypeScript - Coinbase Pro API - NodeJS - React Native

Developed a Raycast extension that leverages the Coinbase Pro API to allow users to easily view their cryptocurrency portfolio in EUR, GBP and USD.

Raycast Extension - Everhour

Raycast Extension - Everhour - visibility: public

Tech Stack: TypeScript - Everhour API - React Native - NodeJs

Developed a Raycast extension that leverages the Everhour API to allow users to quickly add hours to and view their timesheets.

Raycast Script Commands

Raycast Script Commands - visibility: public

Tech Stack: AppleScript - Bash

Developed and published scripts that speed up development workflows for the Raycast community

Scripts:

  • - Quickly leave Zoom meeting - link

  • - Send a Slack message to any channel and change active status - link

  • - View Todoist tasks - link

  • - Create Todoist task - link

Personal Projects

Cool Tech Projects I Have Developed

TV-App Demo

TV-App

TV-App - visibility: public

Tech Stack: JavaScript - ReactJs

For this a custom framework was built for focus / keyboard management (on top of React.js) to deliver a fully functional TV experience that actually works on low performance set-top boxes. Parameters have been built in to increase or decrease image quality to improve performance for devices with limited resources. The focus and keyboard management system has been tested on and works on TV devices. Beyond this, RX.js has been used to deal with streams of information and a video player and has been integrated to play one fixed piece of content.


Main Features:

  • - Hero (transitions as you scroll through cards)

  • - Accessibility Friendly with Text-To-Speech integration

  • - Debugging tools (enabled using "debug=true" URL parameter)

  • - Video Player with custom controls

  • - Network health checks (automatic redirect to offline page and redirect back when online)

  • - Performance Tiers for low to high powered devices (enabled using "perf=lowest/low/mid/high" URL parameter)

  • - Custom HTML Components created specifically for focus management and accessibility tag auto generation

Note: Demo does not work on mobile devices because the application is meant to be used on desktop (for development) and TVs only

FAZIZ-Training Demo

FAZIZ-Training

FAZIZ-Training - visibility: public

Tech Stack: JavaScript - NextJs - StrapI CMS - Firebase - Revolut Checkout

FAZIZ-TRAINING is an easy to use booking system purchase and book personal training or coach lead group CrossFit classes. It was built with a Strapi CMS and Next.js. It has also been integrated with Google's Firebase for authentication and Revolut for payment management.

Portfolio Website

Portfolio Website - visibility: public

Tech Stack: NextJs - JavaScript - Tailwind CSS - Contentful CMS

The current website you are on was built to showcase my work as a developer. It is built using NextJs for image and SEO optimisations. Along with this Tailwind CSS has been used for responsive design and the content is controlled using a Contentful CMS

Sound Wave

Sound Wave - visibility: public

Tech Stack: ReactJs - RxJS - Deezer API

Sound Wave is a ReactJs web application built for all things music. It utilises the Deezer API along with RxJs to connect the app to a large pool of songs with mp3 links. They can be selected and previewed right in the browser along with dictation abilities to search for songs using JavaScript's SpeechRecognition API. Another API is used to provide Shazam like capabilities so that over 52 million songs can be recognised and then be displayed for preview.


Note: sound recognition no longer works as the API trial period has expired

Made with❤️by Faris Aziz