- Senior Software Engineer(GS)²2017 - PRESENT
Technologies: Node.js, Blockchain, Cryptocurrency
- Managed a team of 4 developers—ensuring that deadlines are met for the business's priorities.
- Developed high-frequency-trading (HFT) solutions for the cryptocurrency market (primarily in NodeJS).
- Created custom trading algorithms for novel/cutting-edge financial instruments.
- Integrated with various cryptocurrency exchanges' APIs in order to perform algorithmic trading.
- Implemented advanced, cross-exchange arbitrage systems.
- Freelance Software EngineerJS Software Solutions Ltd2017 - PRESENT
- Configured and managed the environments and deployment pipelines of high-traffic, load-balanced, autoscaling websites and APIs; primarily with AWS and Jenkins.
- Consulted with startups on architecture and how to implement robust software development life cycles with Agile best practices.
- Created various websites and mobile applications to generate passive income whilst also learning new technologies and programming paradigms.
- Java DeveloperWilliam Hill2017 - 2017
Technologies: Java, Spring, Node.js, React.js
- Developed Java (Spring) web applications used in betting terminals across thousands of William Hill stores.
- Modified and debugged Node.js and React.js codebases.
- Utilized TDD, pair programming, continuous integration (CI), and other best practices in an Agile work environment.
- Configured intercommunicating microservices to decouple responsibilities and allow for horizontal scaling.
- Integrated with various external services including OpenBet and BetFair.
- Java DeveloperSky2016 - 2017
Technologies: Java, Spring, Node.js, React.js, AWS, Jenkins
- Utilized the Java Spring framework to develop web applications and APIs that are hit millions of times per day.
- Deployed software and managed environments with Amazon Web Services (EB, EC2, RDS, S3, and so on).
- Experimented in a wide range of languages including Node,js, React.js, and AngularJS.
- Maintained and contributed to internal open source projects.
- Promoted continuous integration (CI), continuous delivery (CD), test-driven development (TDD), pair programming, code reviews, and general best practices in an Agile environment.
- Managed the full life cycle of software used by millions of customers—from requirements capturing and estimation through to long-term maintenance and support.
- Software DeveloperJagex Games Studio2014 - 2015
Technologies: Spring, Java, AngularJS, AWS, Jenkins, WordPress, Bash, Python, PHP, Selenium
- Designed, developed, modified, tested, and deployed Spring MVC and Spring Boot Java web applications used by millions of users. Examples include a bespoke account management system and a player stats system.
- Deployed remotely game server builds via a Unix terminal.
- Analyzed and modified Bash and Python scripts for deployment and maintenance tasks.
- Developed PHP plugins for websites.
- Created automated Selenium regression tests that implemented the Page Object design pattern.
- Utilized Agile/Scrum, Annotations, Generics, Git VCS, HTML, HTTP servlets and containers, Java EE, JBoss, JDBC, JSON, JUnit, OOA/D, Maven, REST, SQL, Subversion (SVN) VCS, and Unix/Bash scripting.
- Mobile Application DeveloperApps4Industry Ltd2013 - 2014
Technologies: Java, Objective-C, HTML, CSS
- Developed bespoke iOS and Android apps for SMEs.
- Created and managed the company's website.
- Produced marketing material (i.e., videos, ads, and so on).
- Converted wireframes to fully operational applications.
- Gathered requirements from customers.
- DirectorFirst Class Creative Ltd2012 - 2013
Technologies: Java, Spring, Nginx, Apache, HTML, CSS, WordPress
- Developed WordPress websites for clients around the world.
- Managed servers for SMEs (Apache/Nginx configuration, DNS setup, SFTP creation, and more).
- Created desktop applications for letting agencies.
- Managed social media for student-related businesses (bars, clubs, student sublets, and more).