Kevin Bloch, Developer in Bergerac, France
Kevin is available for hire
Hire Kevin

Kevin Bloch

Verified Expert  in Engineering

JavaScript Developer

Location
Bergerac, France
Toptal Member Since
January 31, 2017

PostgreSQL, JavaScript, Perl, and Haxe are among Kevin's specialties, but he has worked with many programming technologies since his interest began during grade school. The bulk of his career has been as a lead desktop and full-stack developer, but his favorite areas of focus are project management, back-end technologies, and game development. He works diligently alone but also loves being part of a team.

Portfolio

Toptal
Google Docs, Google Sheets, Jira, Asana, Slack, Zapier
Toptal
JavaScript, TypeScript, Asana, Slack, Google Docs, Google Sheets...
Toptal
HubSpot, Google Docs, Google Sheets, Google Apps Script, JavaScript, Slack...

Experience

Availability

Part-time

Preferred Environment

Git, Linux, Visual Studio Code (VS Code)

The most amazing...

...web stack I've written generated a foreign-key-aware UI for any table, on the fly, from a PostgreSQL DB schema. The back end audited each table automatically.

Work Experience

Contractor

2023 - PRESENT
Toptal
  • Reviewed, edited, and SEOed hiring resources. Provided technical input on other content.
  • Maintained technical dialogue on Jira about platform improvements affecting publishing goals.
  • Oversaw and maintained team process automation in Asana and Zapier.
Technologies: Google Docs, Google Sheets, Jira, Asana, Slack, Zapier

Managing Editor

2022 - 2023
Toptal
  • Oversaw editorial process, providing content review along editorial, technical, and stylistic lines.
  • Reported, tracked, and advocated for issues affecting team processes using Jira.
  • Managed publishing process, responding to changes in requirements and improving efficiency while maintaining world-class quality standards.
Technologies: JavaScript, TypeScript, Asana, Slack, Google Docs, Google Sheets, Google Apps Script, Jira, Confluence, Git, GitHub, Technical Writing

Lead Editor, Engineering Blog (Publications Team)

2021 - 2022
Toptal
  • Reviewed, wrote, formatted, edited, and published technical articles and other site content.
  • Created and reviewed strategic directions and helped with the editor hiring process.
  • Trained non-technical editors and devised new processes to outsource technical reviews to facilitate their contributions.
  • Applied SEO research to blog articles and overall team direction.
  • Created and maintained team procedure and process documentation.
Technologies: HubSpot, Google Docs, Google Sheets, Google Apps Script, JavaScript, Slack, Trello, Asana, kramdown, Git, GitHub, Confluence, Jira, MathJax, JSON, Technical Writing

Senior Editor

2019 - 2021
Toptal
  • Wrote, formatted, edited, and published blog articles, anonymous guides, and other site content according to SEO and team strategies.
  • Created, proofread, and sent newsletters. Debugged newsletter templates and processes.
  • Brainstormed and coordinated with the design team for illustrations.
  • Reviewed, debugged, and otherwise improved example code used in articles.
  • Maintained user script code to facilitate daily editorial tasks.
  • Created a prototype pipeline management system to streamline common publishing operations and reduce inconsistencies in the publications team output.
Technologies: HubSpot, Google Docs, Google Sheets, Slack, Trello, JavaScript, Google Apps Script, JSON, Technical Writing

Editor

2017 - 2019
Toptal
  • Reviewed, wrote, formatted, edited, and published technical articles and other site content.
  • Created, proofread, and sent newsletters. Debugged newsletter templates and processes.
  • Brainstormed and coordinated with the design team for illustrations.
  • Reviewed, debugged, and otherwise improved example code used in articles.
  • Maintained user script code to facilitate daily editorial tasks.
Technologies: HubSpot, Trello, Google Docs, Google Sheets, JavaScript, Technical Writing

Senior Back-end Developer - Node.js

2017 - 2018
Mllnnl
  • Maintained, extended, and scaled the back end and database.
  • Managed DevOps processes, including being co-responsible and later solely responsible for versioning and deployment.
  • Conducted code reviews of front- and back-end code as well as PostgreSQL stored procedures and views.
  • Coordinated with front-end developers on back-end API changes.
  • Implemented the back-end test suite to avoid regressions.
Technologies: pgAdmin, REST APIs, PL/pgSQL, SQL, Back-end, Flyway, Docker, Bash, Amazon EC2, OpenShift, Apiary API, PostGIS, Chai, Mocha, JavaScript, ReactiveX, TypeScript, PostgreSQL, Node.js, JSON, Agile Software Development, Angular, Instagram API, DevOps, Swagger, RabbitMQ

Technical Editor

2017 - 2017
Toptal
  • Wrote, formatted, edited, and published blog articles, anonymous guides, and other site content.
  • Created, proofread, and sent newsletters. Debugged newsletter templates and processes.
  • Recruited and coordinated with authors to produce hiring resources.
  • Brainstormed and coordinated with the design team for illustrations.
  • Applied SEO research to blog articles and hiring resource content.
  • Helped execute social media outreach plans on LinkedIn and Twitter.
  • Streamlined procedures and checklists regarding editing and publishing.
  • Added integration automation to the publishing pipeline.
Technologies: HubSpot, Asana, REST APIs, Front-end, HTML5 APIs, Back-end, Search Engine Optimization (SEO), Inkscape, JavaScript, Google Apps Script, Google Sheets, Salesforce Einstein, LaTeX, MathJax, Slack, Trello, kramdown, Google Docs, Technical Writing

Indie Developer

2015 - 2016
In the Beginning was the Word Game
  • Created two very basic Android apps.
  • Built two games for Ludum Dare game jams (i.e., very rapid development).
  • Designed, developed, blogged and tweeted about, directed, tested, published, and promoted a commercial video game while contributing bug and feature patches back to the open source technologies being used.
  • Open-sourced my own library, FlxScrollableArea.
Technologies: Back-end, Shotcut, Godot, Inkscape, Audacity, Blender, Linux, OS X, Windows, FlashDevelop, HaxeFlixel, HaXe

Linux Server Administrator/Automation Developer

2015 - 2015
Stepping Stone GmbH
  • Provisioned KVM server (Linux and Windows) for various client projects, each involving setting up servers from cloned VMs, updating the internal wiki, configuring Zabbix host monitoring, and customizing Iptables-based firewall scripts.
  • Set up database and application back-end for some projects, which involved creating simplified/prettified documentation for clients and maintaining VM templates.
  • Provisioned web hosting, mail accounts, backup accounts, and ownCloud servers—set up and administered when requested by various clients.
  • Helped install new RAID drives in rack servers and remove old ones.
  • Automated DNS settings and firewall change for 200+ servers by writing bash scripts to extract server data from MediaWiki pages and execute DNS and firewall update scripts on every running Linux-based physical server, vServer, and KVM server.
  • Optimized maintenance window notifiers and developed features—optimized and extended a Perl script using data from LDAP for exporting and for sending scheduled reminder emails.
  • Helped prepare for colocation migration by taking physical inventory of rack servers and switches, updating firmware on newly purchased switches, and provisioning a web server from ancient hardware to display a message during migration.
  • Helped with physical colocation migration by uninstalling rack hardware, moving it, organizing it for most efficient reinstall, reinstalling it, and reconnecting cables.
Technologies: Back-end, LibreOffice, SSH, Templates, MediaWiki, PHP, Windows Server, Remote Desktop, OwnCloud, Iptables, Bash, Vi, Terminal, GitHub, Subversion (SVN), Spiceworks, SugarCRM, Alfresco, DNS, LDAP, GlusterFS, NFS, Ubuntu, Gentoo, CentOS, Quick EMUlator (QEMU), KVM, DevOps, Zabbix

Project Manager and Full-stack Software Engineer

1996 - 2015
Brant Aero
  • Added a number of features, including a drag-n-drop image uploader, a "pending" feature for group request submissions, a history search feature with full text indexing and fuzzy text search for stock items, Facebook-style homepage notifications, and more, to a purchase request system.
  • Created a government extranet for inspectors to approve policy manual revisions.
  • Enabled cache support for hangar floor parts, requiring fewer trips to the stockroom while maintaining government traceability requirements and supply-level monitoring.
  • Fixed, cleaned up, and provided data recovery and performance tuning for ad-hoc databases. Generated a network attack tracker graph that automatically imports data from the router.
  • Implemented several features, including a document hierarchy editor with drag-n-drop added to the CMS, a third-party issue tracker solution hosted with Docker, and cronjobs to help catch vendor errors and notify the relevant manager using an integrated permissions hierarchy.
  • Made the core functionality of an intranet app robust against outages of the main third-party system.
  • Ported PartTake from VB to mod_perl, including barcode and address printing (with provisions for just-in-time auto-switching printers on Windows via URL scheme and rundll32 workaround).
  • Staged a build system with unit testing, minification, performance testing, and integration testing with integrated QA.
  • Upgraded a backup system to cross-platform multi-server usage.
  • Added a website section powered by third-party bulletin board software and created an automatic image renaming and uploading tool for personal project management.
  • Built a power outage tracker graph that automatically imports data from UPS. Added authenticated inspection tracking to the alternative UI for shop order updates.
  • Created a couple of backup systems, including a solution for HyperV environment and a backup, verification, and restore solution to replace the old tapes-based system.
  • Designed, wrote, and maintained the PartTake software system to streamline stockroom processes while meeting strict government traceability requirements and working with the exisitng inventory system and its timeclock, tool tracking, and purchase ordering integrations. Shipped with barcode and address label printers drawing relevant data from the existing system and configured the GUI tool.
  • Enabled vendor purchase email templating for the purchase request system.
  • Implemented honors-system workstation sharing, allowing different logins on separate tabs without confusing credentials (see https://stackoverflow.com/a/1133999/16777 – sometimes the rather unique business environment involved required unorthodox solutions).
  • Oversaw and helped with the data migration of an accounting, inventory, and shop order system from DOS to SQL/Windows.
  • Prototyped a new intranet menu system called DialAKneeThing (DaKT), an open-source single-page application in minimal JavaScript/CSS for presenting basic menu hierarchies on low-end hardware.
  • Redesigned a number of websites, including a website and corresponding script to automatically update local pilot weather information, and vectorized its company logo; a website and wrote/edited material for the Save the Airport local political campaign; a website to be fast-loading and able to fit on a floppy disk; a website to feature a new aircraft sales section; a website with dynamic content and search functionality; and a website with featured past projects and auto-updated weather map overlayed onto the company's precise location.
  • Wrote and implemented IT policy and analyzed and made improvements to the year-end processes as well as researched, revised, and helped implement, organize, and conduct the company process audit.
  • Built an NS- and IE-compatible website and corresponding Windows GUI page-text updater utility.
  • Created marketing materials to sell PartTake to other users of our third-party niche industry integrated accounting system.
  • Developed a custom CMS—from scratch—automatically following government regulation updates, notifying only the relevant internal parties of the relevant internal documents (and their internal dependencies) that would need review. All regulatory links were kept in consistent auto-updated format, and review and audit policies were enforced by database triggers.
  • Evaluated Andromeda as a potential platform to base the rest of the intranet app on.
  • Implemented the UI for a SQL backup manager. Rewrote an intranet app with commonly used SQL reports from scratch to speed it up and cover functionality gaps.
  • Migrated a domain from Windows 2003 AD to Samba 4.
  • Oversaw the migration of a server and workstation system from Novell Netware to Windows 2000 AD.
  • Refactored shop order workflow to streamline usage, testing, and maintenance; integrated a fast menu UI library (both keyboard and touchscreen friendly).
  • Built database development tools: a PostgreSQL function body searcher for global renames, a GraphViz-based foreign key map generator, and more.
  • Created server health metrics via statistical process control graphs and output comparison, with email notification.
  • Developed a smart-sorting table view UI so that part numbers end up being sorted as they traditionally were physically, even in more complicated number-letter-number-etc. scenarios.
  • Expanded the shop order UI to cover more features than offered by the third-party system, and added project wrap-up verification tools to avoid peak activity errors.
  • Integrated government-supplied aircraft registration databases for easy client info updates.
  • Migrated a purchase request system from paper to email, and then later from email to database, integrated with the existing intranet app. Wrote a VB5 utility to speed up the process of scanning old documents into the new paperless system.
  • Built the Dogfooded task/project management feature integrated with an intranet app.
  • Created Widgetissimo, an initially jQuery-based plugin side project for UX improvement with form autosave and keyboardability focus.
  • Developed an alternative UI for shop order updates for user convenience/workflow speed, including time tracker UI replacement, with RTF to HTML (and back) conversion, and HTML editor UI (cross-database).
  • Integrated a timed training bulletin system with a CMS to force a re-read of updated sections at a manager-specified interval.
  • Migrated a major accounting system version, including all required changes, to homegrown add-ons.
  • Developed disaster recovery for SQL and filesystem data from a HyperV environment.
  • Integrated a website with Blogger.com to allow a stockroom manager to update the special offers page herself.
  • Researched, built, set up, and administered a new Linux server and dial-up connection sharing. Migrated the intranet app and scheduled scripts from Windows to Linux.
  • Developed draggable sort-preserved multiselect for quick composition of complex selections for a purchasing request system (close emulation of Windows Explorer's behavior for easiest user learning curve).
  • Integrated an avionics storage bin tracking and replacing paper system with the project management UI and vendor database.
  • Mitigated potential disaster using commit hooks integrated with paper procedures to keep a plan for dealing effectively with IT service outages up to date. Wrote an intro paper telling how to access multiple automatic backups of electronic documentation.
  • Researched, designed, and implemented autogenerated database views from a smart normalized database design with integrated benchmarking. The database features manager, employee, and personalized database views (where applicable) with auto-generated UI and tables that automatically link to the editing page for each row and the editing page for any referenced foreign key in the row. The editing pages saves partially filled-out forms to pre-emptively protect against data loss in the case of client, server, or connection problems.
  • Developed full text search indexing for a third-party app via smart synchronization for vast speed improvements on zero budget.
  • Integrated company role hierarchy with the CMS for training so that document updates trigger a notification to exactly the right employee to read changes; an automatic org chart generator is based on this data to fulfill a requirement for maintaining the policy manual.
  • Integrated Selenium IDE into the QA process for most common tasks to prevent regressions.
Technologies: Apache HTTP Server, pgAdmin, REST APIs, HTML5 APIs, SQL, Back-end, Front-end, Full-stack, DocBook, Windows, Linux, XSLT, Cygwin, SSH, Rsnapshot, CentOS, Selenium, Mercurial, Subversion (SVN), pgTAP, PL/pgSQL, PostgreSQL, Microsoft SQL Server, VBScript, Visual Basic, JavaScript, Regex, Perl, Apache, Bash, JSON, DevOps, Technical Writing

National Operations and Accounts Administrator

2011 - 2012
Global Youth Volunteer Network
  • Migrated a website to a new provider and content to WordPress.
  • Maintained and extended a web-based accounting system—home-grown and undocumented (PHP, MySQL).
  • Migrated Core Data to CiviCRM.
Technologies: SQL, Back-end, Front-end, Full-stack, Windows, WordPress, CiviCRM, MacOS, Python, PHP, MySQL, DevOps

Intern

2002 - 2002
Storeimage
  • Rebuilt Windows workstations, wrote technical documentation and procedures, organized documents and spare hardware, troubleshot Windows desktop and server issues, and managed desktop virus scanner updates.
  • Reorganized 200 network cables' worth of spaghetti after hours to avoid service disruption.
  • Wrote a simple info service generator in PHP on my last day.
Technologies: PHP, HTML, MacOS, Linux, Windows, Technical Writing

Willy and Mathilda's Houseboat Adventure: The Game

https://ibwwg.itch.io/mathildagame
Wrote all code (Haxe, plus helper scripts in CMD and Bash), processed audio and art, directed voice recordings, and tested, published, and marketed the game. Available on Windows, Mac, and Linux.

PartTake (Streamlined Stockroom Process)

http://codingthat.com/cv/portfolio/parttake/
PartTake is a small, zero-learning-curve, yet very handy open-stockroom program for companies that use Horizon Business Concepts' TotalFBO® (versions 4, 5, or 6).

Wrote in 2004 (in VB5) and maintained it until 2014, when I ported it to be part of Brant Aero's main intranet app in Perl/HTML/JS/CSS.

CheaterMind

https://github.com/IBwWG/cheatermind
A MasterMind clone I developed more or less from scratch, with AI that guarantees the player is always as unlucky as possible.

(MasterMind is an old board game where you are trying to guess a code sequence. Each guess is met with partial feedback, helping the player deduce the code.)

Codility Silver Award for the Vanadium 2016 Challenge

https://codility.com/cert/view/cert3NYNCC-5QSWERY5K8AQU7QW/
Wrote the challenge in Perl.

Very Responsive Single-page Application Prototype

https://github.com/KevinField/DaKT
DialAKneeThing is a lightning-fast, exploration-based hierarchy viewer, meant to scale from personal bookmarks all the way up to a replacement for large corporate websites' nav pages/site maps.

Initial code and idea author. JavaScript/CSS.

Programmer Mentorship on an Online Freelance Agency

https://www.codementor.io/@kev#reviews
It's been my privilege to put my decades of experience to use mentoring other programmers on this platform. I only managed to connect with a few individuals this way before shifting my focus elsewhere, but it was great to help people debug their projects.

JavaScript L-System Interpreter

http://codingthat.com/cv/portfolio/pmath370/
An L-System Interpreter written in JavaScript and making use of the then-new HTML5 Canvas technology.

Sole author. Unmaintained since inception, but still works as of 2019.

Video Game Modding Framework (word_realms_mods)

An unofficial, cross-platform interface for creating and installing mods for the game Word Realms by Asymmetric Publications. I wrote this in Bash and have maintained it so far.

I also hacked some ActionScript3 bytecode to customize some game behavior.

TDD Practice Projects

https://github.com/KevinField/node-js-getting-started
YoseTheGame.com TDD practice projects.

Forked basic Node.js server, then developed several mini-projects using TDD.

Scrollbar Library for HaxeFlixel

https://github.com/IBwWG/FlxScrollableArea
Provides traditional visual scroll bars within the HaxeFlixel engine.

I'm the sole author at this point.

52-Card Pickup 2000 (Win/Mac/Linux, 3D, Open Source)

https://github.com/IBwWG/52cp2k
Jokingly paying homage to the classic trivia game "You Don't Know Jack," for Ludum Dare 37, I made this cross-platform 3D game in a single weekend using the Godot Engine and GDScript, which I had never used before, and released the source online.

Need Inspiration — Basic Android App

https://play.google.com/store/apps/details?id=com.blogspot.gimmickyapps.needinspiration
This app pairs random words (either a noun with an adjective, in "make" mode, or a verb with an adverb, in "do" mode) and presents them to you as a phrase, with the intention that you can use said random phrase as inspiration for a story, product, name, and more.

I'm the sole author.

Anticolonias (HTML5, Flash)

https://bit.ly/3nmWDDo
Wrote the game in Haxe over the course of a few days, for Ludum Dare mini-jam #69. Has way too much strategic and story depth for a jam game, but I got it done. Art is, notably, procedurally generated.

Video Game Translation Framework

How to use Word Realms to help learn another language: an unofficial guide with helper scripts written in cross-platform Bash and Perl.

Wrote it and maintained it so far. Used it to create mods for word-realms-mods so that interested users have prepackaged translations and don't actually need to use this tool.

App Launcher for Alternative OS

https://github.com/KevinField/BeFull
Full-screen app launcher I made in C++ for BeOS. Still worked on Haiku (the open source replacement for BeOS) as of 2014.

Mentor with an Online Freelance Agency

Mentored programmers with varying experience levels, working on projects of varying complexity. The part that did not change was how happy they were with the brief time spent troubleshooting together—even though, in some cases, I was also new to some of the particular technologies they were using.

Old-fashioned Remote: A Node.js Multimedia Control Server

https://github.com/codingthat/old-fashioned-remote
A full-stack app coded using Node.js and vanilla JavaScript, CSS, and HTML, allowing you to use your smartphone as a simple remote control for Netflix, Amazon Prime, Disney Plus, or your favorite media player. I wrote this as a demonstration project for a Toptal Engineering Blog tutorial. It uses a similar front-end strategy to DaKT, my ultra-lightweight menu interface.

Languages

JavaScript, Perl, HaXe, SQL, HTML5, PL/pgSQL, Markdown, HTML, TypeScript, REBOL, CSS3, T-SQL (Transact-SQL), Bash Script, Visual Basic, Regex, CSS, Bash, VBScript, XSLT, DocBook, Python, Google Apps Script, C, Objective-C, CoffeeScript, C++, Sass, PHP, Ruby, XML/XSLT, Flash ActionScript, Java, ActionScript 3, Pug, ECMAScript (ES6)

Frameworks

pgTAP, Mithril.js, FeathersJS, Svelte, Selenium, Android SDK, Express.js, Windows PowerShell, Ember.js, Ruby on Rails (RoR), Bootstrap, AngularJS, Django, Vanilla JS, Angular, Swagger

Libraries/APIs

HTML5 APIs, REST APIs, Node.js, Mod_perl, React, Instagram API, jQuery, ReactiveX, Pure CSS, ImageMagick, Chai, Apiary API, MathJax, Backbone.js, OpenFL

Tools

Mercurial, Apache HTTP Server, Inkscape, GitHub, Audacity, Bitbucket, pgAdmin, Cygwin, Hyper-V, LibreOffice, Vagrant, Git, KVM/Qemu, Postman, PhpMyAdmin, Apache, Subversion (SVN), Rsnapshot, Alfresco, SugarCRM, Spiceworks, Terminal, FlashDevelop, Mocha, Flyway, Google Docs, Trello, Slack, Salesforce Einstein, Google Sheets, Flash, Asana, LaTeX, Blender, MediaWiki, Confluence, Jira, Zapier, RabbitMQ, Zabbix

Paradigms

Test-driven Development (TDD), Samba, Behavior-driven Development (BDD), Testing, Agile Software Development, Search Engine Optimization (SEO), DevOps

Platforms

Linux, Windows, HaxeFlixel, Linux Mint, CentOS, Docker, BeOS, LAMP, Godot, OpenShift, Visual Studio Code (VS Code), MacOS, WordPress, KVM, Quick EMUlator (QEMU), Ubuntu, Windows Server, OS X, Amazon EC2, HubSpot, Android, CiviCRM, iOS

Storage

SQL Server Management Studio (SSMS), Microsoft SQL Server, JSON, PostgreSQL, MySQL, PostGIS, GlusterFS, OwnCloud, MongoDB

Other

Full-stack, RSync, AS3 Bytecode, Selenium IDE, Front-end, Back-end, Data Extraction, Proofreading, Documentation, Writing & Editing, Technical Writing, Objects, Statistical Quality Control (SQC), Microsoft 365, LDAP, HTTPS, SSH, Gentoo, NFS, DNS, Vi, Iptables, Remote Desktop, Templates, Shotcut, kramdown, Games, Modding

2005 - 2008

Bachelor's Degree in Mathematics

University of Waterloo - Waterloo, Ontario, Canada

2003 - 2005

Progress towards a Bachelor of Arts Degree (Hons) in Global Studies and Mathematics (Minor subjects: Computer Science, Philosophy, Religion and Culture)

Wilfrid Laurier University - Waterloo, Ontario, Canada

JANUARY 2009 - PRESENT

Basic Principles of Quality Assurance

The DTI Training Consortium Inc.

JANUARY 2009 - PRESENT

Basic Auditing Principles

The DTI Training Consortium Inc.

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