Chris Gregori

Welcome

Design & Code

London, England

...




My Name is Christopher Gregori. I am a Software Engineer graduate living in London.
I enjoy fun little programming projects and working with fun people.
Contact me if you want to find out more.

Education


BSc (Hons) Software Engineering - City University, London

September 2010 - July 2014

A specialist focus on the programming and development of large and complex software, with an emphasis on dependable systems.
Classification: Class I Honours




Year 4
Programming in C++ 80.4%
Games Technology 73.1%
Individual Project - Triple Module Dissertation 82.0%
Electronic Commerce 78.0%
Data Mining 82.5%
Requirements Engineering 80.0%
Year 3 - Industrial Placement with Thomson Reuters
Professional Experience - Placement Reports 76.0%
Year 2
Data Structures & Algorithms 66.0%
Formal Methods 72.4%
Networks and Operating Systems 64.6%
Object-Orientated Analysis and Design 75.1%
Professional Development in IT 73.0%
Software Measurement and Reliability 57.7%
Team Project - Double Module 67.0%
Year 1
Computation and Reasoning 81.8%
Mathematics for Computing 69.6%
Software Engineering 60.8%
Systems Architecture 56.8%
Programming in Java 80.5%
Business Systems 78.0%



BAPERS
(Team Project)
Java
JDBC
MySQL
This application was created during my second year of University in a team.
This desktop application built in Java utilised the JDBC MySQL driver to hook into a back-end database of record data to provide an application suite for a mock Photography firm.

The system features functionality to record orders, manage staff and customer records, and produce PDF receipts of complete jobs.

The solution was designed as a team and implemented by me.
Competition Assessor Scoring System
(Dissertation)
Java
Cyber Security Challenge (CSC) is a non-profit company that runs IT security-related competitions and events with the aim of attracting talented cyber specialists to the IT security industry.

The purpose of this project was to work with CSC to develop a system with capabilities to efficiently and securely collect, assess, collate and automatically normalize data from CSC events.

The new system aimed to reduce time spent administrating, analyzing and normalizing event candidate scores through the implementation of a normalization engine. The system increased efficiency and robustness of the data via a software implementation over the previous paper-based system and increased security of all aspects of event data through the use of encryption and dedicated file formats.

I achieved a grade of 82% for this dissertation and was invited to the Made@City event to exhibit the application.
Games Coursework
C++11
OpenGL
A recreation of the video-game 'Asteroids' built using OpenGL and C++ 11.
Involved programming collision detection, bounding shapes, and automatic enemy AI.
C++ Coursework
C++11
Simple console application built to demonstrate the usefulness of C++ Templates, Abstract classes and virtual tables by transforming 2D shape coordinates.
E-Commerce Coursework
HTML5
PHP 5.4
jQuery
Javascript
MySQL
Mock online shopping site built to sell Video Game Art.

Incorporated Twitter Bootstrap as a CSS framework, jQuery for animation, MySQL as a database, and PHP as the backend for constructing sessions, carts, orders and hashing passwords.
Java Coursework
Java
Box2D
Designed, prepared and created a side-scrolling action game during my first year of university utilising the Box2D engine (used by the popular game, Angry Birds).

Contains and includes fully animated sprites, sound effects, 3 levels, a main menu, and a high score system; it was created using the Java programming language during my first year of University.
Video Preview

...


Work Experience


Net-A-Porter - Graduate Software Engineer

September 2014 - ...

Graduate Software Engineering Scheme based on rotations in Software Testing, Software Development and Dev Ops. Exposing me to various technologies, including Java, Perl, Scala, Ruby, JavaScript and iOS development.


Thomson Reuters - Junior Software Engineer

July 2012 - August 2013

Developing, implementing and maintaining tools in C++, C# and VBA to monitor and improve the Elektron Traffic Management System.




Statistic Analyser Tool
C#
XML
Regular Expressions
OpenXML
This application was created during my placement at Thomson Reuters.

My first application built in C#, replaced a legacy application which would analyse server log files by passing data into an XML customisable analysis engine, and output graphs in XLSX format.

The application required no pre-requisite installs other than the .NET framework.

The original application took 1-2 minutes per graph generation, this version took ~8 seconds per graph. This application continues to be used and further developed after my leave.

Further information unavailable due to client disclosure agreement.
Log File Inspector
C#
XML
Regular Expressions
This application was created during my placement at Thomson Reuters.

This desktop application built in C# provided the analysis of:
  • Server log files (content and time span)
  • Windows event files
  • Raw text files
The XML customisable tests could allow for inclusion/exclusion of user-defined errors, minimum/maximum timespan of server files, the number of errors and other user customisable settings.

The results could be viewed on a line-by-line basis, and could be exported to reports.
Other features included:
  • Built in XML editor (with code folding and syntax highlighting) to customise and load new tests.
  • Built in folder-recursive .tgz file extraction.

Further information unavailable due to client disclosure agreement.
Diagnostic Application Monitor
C++11
MFC
This application was created during my placement at Thomson Reuters.

My first GUI application built in C++. This application displayed real-time server information updatable at customisable intervals, and allowed for actions such as server state alteration, and pushing and pulling of files to the server remotely.

Further information unavailable due to client disclosure agreement.
VBA Scripts
VBA
Several VBA scripts were designed and implemented during my placement at Thomson Reuters.

These scripts connected to backend databases to automatically pull statistics and values to populate a Microsoft Spreadsheet - this data was plotted and analysed for use within the company.

Further information unavailable due to client disclosure agreement.

...


Personal Projects


These projects are small pieces of work I develop in my own time to either learn something new, practise a skill or simply test out an idea.




Rainbow Drop
C#
Unity
A fast-paced 2D slide-action game with rogue-like features.

Coming soon to Android!

Play a demo here!
Play Date
HTML5
PHP
Javascript
jQuery
Twitter Bootstrap
RSS
iCal
Built natively in Javascript and PHP, Play Date is a mobile-friendly, responsive site I created to help gamers keep up to date with the dates their favorite games are scheduled to be released.

It took about a day to make and would not be here without Full Calendar or Giant Bomb's API.

The site also uses Twitter Bootstrap for stylistic purposes as a CSS framework.

Play Date has been featured in several articles across several popular technology/gaming news sites and blogs. The immediate exposure brought in 40,000 hits in 3 days, and took the average daily user base to 1000+.

The flood of requests led to me to implement RSS feed support and iCalendar and Google Calendar export and subscription meaning users are now able to subscribe to the site and have an automatically updating video-game calendar on their preferred device.

Articles regarding Play Date:

Visit the site here!
Hot Cloud
HTML5
PHP
JSON
jQuery
Twitter Bootstrap
Built in PHP, Javascript and JQuery, Hot Cloud is a real-time video game news aggregator I created to help games keep up to date with the latest news in gaming.

All of the information is pulled on page load from various gaming RSS feeds, unwanted terms are blacklisted and listed by size (the bigger the word, the more popular the topic).

Visit the site here!
Google Image Grabber
Python
A Python script I built to grab random images from Google Image Search, add them to an array and return it to be used in other modules.

The search term, number of values and option to print is available.

GitHub Page
Reddit Auto Image Bot
Python
A bot built in PRAW (Python Reddit API Wrapper) to automatically reply to comments with images specified based on contents of the comment found on the popular social networking service and news website, Reddit.

Uses the previously mentioned Google Image Grabber script I created to function.

GitHub Page
Java Type Checker
Java
Swing
Snippet
Validates types for given and desired values in Java.

GitHub Page
Recursive File Deleter
Python
Script
A Python script to recursively run through folders and delete files based on file name and extension.

GitHub Page
Simple File Organiser (Windows)
C#
C# GUI Tool to organise files in directories based on search terms.

The tool will take your files from the directories specfied, search for the added search terms and begin to find files matching.

GitHub Page
Reddit Image Downloader
C#
Reddit User Image Downloader using RedditSharp.
Enter the user to download from, the subreddit their pictures have been taken from, and press the button to select an output directory.
Press Download to retrieve the pictures.

GitHub Page
Urllu.js
Javascript
jQuery
Snippet
A Tiny URL lookup tool I created for a friend.

Fill the JSON file with the keyword->URL references and load the page.
Entering the keyword into a configured input and searching will redirect you based on the keyword entered.

A very small snippet created in about an hour.

GitHub Page
MALit!
Javascript
HTML
Chrome Extension
A Tiny Chrome Extension lookup tool I created.

The extension adds an option to your chrome context menu to allow you to search MyAnimeList (an Anime Encyclopedia site) for the term highlighted.

A slightly faster way to get information about your anime.

Well recieved, used 1100+ times in it's first week of publishing!

Chrome Store Link
MALfo!
Javascript
HTML
Chrome Extension
A Tiny Chrome Extension I created which compliments MALit!.

The extension automatically crawls MyAnimeList (an anime encyclopedia) links on Reddit.com to provide statistics for said anime next to said link!

A slightly faster way to get information about your anime.

Well recieved, generated 21000+ instances of information in it's first week of publishing!

Chrome Store Link

...


Contact me

Social Media

Send me a message