Russell Colin Allen, Developer in Goleta, CA, United States
Russell is available for hire
Hire Russell

Russell Colin Allen

Verified Expert  in Engineering

Web Development Developer

Location
Goleta, CA, United States
Toptal Member Since
August 16, 2017

Russell is a highly passionate and motivated software developer who enjoys creating innovative and scalable web and desktop applications. He has worked on numerous open-source projects and prides himself on his capacity to adapt to different technologies and stacks. Russell is looking forward to using his skills and expertise to help others achieve their goals.

Portfolio

Signs365.com
Node.js, MySQL, Docker, REST, Express.js, Seneca.js, ECMAScript (ES6), RDBMS...
Mod Picker, LLC
C#, Delphi, JSON, REST, Redis, Sidekiq, Sass, AngularJS, JavaScript, SQL...
Click-Thru Consulting
CanCanCan, MySQL, Ruby on Rails (RoR)

Experience

Availability

Full-time

Preferred Environment

Git, Node.js, WebStorm

The most amazing...

...programming experience I've had was when I was invited to Taiwan to participate in the HackNTU international hackathon and won third place with my team.

Work Experience

Back-end Developer

2019 - 2019
Signs365.com
  • Developed a microservice architecture collaborating with other developers to replace a legacy application while offering a compatible API.
  • Developed support for a new product: printing on hard cards. I updated the existing code to support new printing layouts and requirements as determined by the product team.
  • Investigated various technologies to construct a new stack according to the engineering requirements using Seneca, Express, Docker Kubernetes, and other systems.
  • Developed a fully functioning authorization library in Node.js with complete Jest test coverage.
Technologies: Node.js, MySQL, Docker, REST, Express.js, Seneca.js, ECMAScript (ES6), RDBMS, PHP, Jira, Jest, Test-driven Development (TDD), Swagger, JSON Web Tokens (JWT), Yup

Founder and Lead Developer

2016 - 2018
Mod Picker, LLC
  • Built a private RESTful API back end in Ruby on Rails using MySQL as the database and Devise for authentication. Created a public-facing API to be consumed by other developers using API tokens.
  • Designed a database schema with 79 tables and 149 relationships.
  • Developed an AngularJS front-end single-page application from the ground up with 104 directives, 69 services, and 74 views.
  • Created a JSON templating library built off of ActiveModel serialization.
  • Produced 25 index pages with hundreds of filters and dozens of sorting options.
  • Created a dynamic AngularJS data table display system for sorting and displaying data based on simple column configuration.
  • Designed a tagging system that allows crowd-sourced tagging of content with searching, allowing users to find content that excludes or includes certain tags.
  • Created a grid and list-based drag-and-drop mod list management tool, with built-in recognition and automatic resolution options for ordering and compatibility issues.
  • Developed a desktop application in C# for generating analyses of video game modifications to Bethesda games, including analysis of file structure, nested archive contents, and Bethesda plugin files.
  • Built a DLL with Delphi, wrapping around an existing codebase to generate reports on Bethesda plugin files.
Technologies: C#, Delphi, JSON, REST, Redis, Sidekiq, Sass, AngularJS, JavaScript, SQL, Ruby on Rails (RoR), Ruby, Leadership

Web Developer

2016 - 2016
Click-Thru Consulting
  • Built a platform for managing clients with Ruby on Rails.
  • Worked with a client to create a MySQL database with a dozen tables.
  • Devised a 3-role system for clients, client service representatives, and platform administrators with CanCanCan.
  • Designed an automatic mailer so that representatives could start the process of signing a client up for a service quickly and easily.
  • Developed a fully dynamic system for creating and managing services so that platform administrators could add or remove services as needed without requiring the help of a developer.
Technologies: CanCanCan, MySQL, Ruby on Rails (RoR)

Software Development Intern

2015 - 2015
Invoca, LLC
  • Contributed to Backdraft, a wrapper around Backbone.js providing jQuery DataTables integration and Plugin Framework.
  • Collaborated with a Scrum team to evaluate and track user stories through development.
  • Participated in a company hackathon, where my team won first place for creating a new reporting system.
Technologies: DataTables

zEdit

https://github.com/z-edit/zedit
An open-source IDE for working with Bethesda game files with an extensible module system. Built with AngularJS, Node.js, and Electron, it binds a Delphi DLL through a native node addon and provides tools for viewing, editing, and generating Bethesda Plugin Files, Papyrus script files, and Bethesda archive files.

SevenZipExtractor

https://github.com/adoconnection/SevenZipExtractor/pull/4
Contributed to an open-source repository to improve the file-speed extraction. The approach used by the library was inefficient because each time it directed 7-zip to extract a single entry, which caused it to seek that entry in the archive, decompressing as it seeks. This results in an O(n log n) extraction time ignoring overhead. The extraction time for several archives I was extracting went from more than 60 seconds to around 3 seconds with these changes.

File Format Parser

https://www.npmjs.com/package/file-format-parser
A Node.js package that provides an API for reading and writing binary file formats. Uses an innovative data schema approach to make defining file formats easy and flexible.

CVoxelEngine

https://github.com/matortheeternal/CVoxelEngine
A C++ volumetric graphics engine built using SDL. Used to generate volumetric representations of fractal objects. Capable of generating and navigating around 3D fractals with billions of voxels and using raycasting to generate images.

EcoNode — Environmentally Aware Mesh Network

https://sbhacks.devpost.com/submissions/32393-eco-node
Eco Node uses a live mesh network of 2.4 GHz radios to relay local weather, plant conditions, and water consumption information to a usable database. I developed the software to receive the radio transmissions, push them to Firebase, and build the front-end data display.

Languages

ECMAScript (ES6), GraphQL, HTML, Sass, JavaScript, Delphi, CSS, Ruby, C#, SQL, Markdown, TypeScript, XML, Python, Java, Lua, C++, Octave, Bash, PHP

Frameworks

Ruby on Rails (RoR), AngularJS, Electron, YARN, .NET, .NET Core, UI-Router, Jest, Jasmine, Express.js, Swagger, JSON Web Tokens (JWT)

Libraries/APIs

REST APIs, Node.js, Sidekiq, Devise, AREL, CanCanCan, Nokogiri, React, Rollup.js, Seneca.js, Yup

Tools

RubyMine, Git, NPM, GitHub, Trello, WebStorm, Gulp, Eclipse IDE, Microsoft Visual Studio, DataTables, Rollup, Grunt, Jira

Paradigms

Object-oriented Programming (OOP), Scrum, Unit Testing, Agile Software Development, REST, Test-driven Development (TDD)

Platforms

Desktop, Windows, Linux, Docker, Android, Firebase

Storage

JSON, MariaDB, MySQL, Redis, NeDB, RDBMS

Other

Web Development, APIs, Embarcadero RAD Studio, DLL, Leadership, User Interface (UI), User Experience (UX), Open Source, Data Compression, 3D Graphics, Charts

2013 - 2015

Coursework towards a Degree in Computer Science

Santa Barbara City College - Santa Barbara, California

2011 - 2013

Coursework in Physics

UCSB - Santa Barbara, California

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