Introduction
I'm a programmer and sysadmin mainly doing web development at the moment but with a strong history of systems programming in the C langs and .NET. I try to maintain a focus on clean code and minimalism learned from the latter in both mediums.
Skills
- Languages: Several including C, C++, C#/.NET, Python, Javascript and PHP with strong paradigm fundamentals and willingness to learn more. I prefer object-style JS over syntactic sugar.
- Databases: SQLs, MongoDB/CouchDB/Object-based, memcached, etc.
- HTTP Servers: nginx, Apache, lighttpd
- Environments and OS: Linux and Windows, Visual Studio (for .NET stuff) and vim preferred. Strong experience with sh scripting.
- Web Development: History with Web.py, Pyramid, Django and Laravel. But capable of in-house and from-scratch minimal framework use. I try to avoid the large libs when I can - preferring modern HTML/JS. But familiar with several including Bootstrap.
- Version Control: Git, svn, etc.
Open Source Projects
- Lagg.Bot: Open source implementation of my Steam bot manager design.
- OPTF2: Steam inventory and schema viewer and information dumper.
- steamodd: The lib at the core of OPTF2.
- XMMS2: Various patches including an FLV demuxer and YouTube transport
- SteamBot: Various patches, portability fixes, headless server compatibility
Some older or minor projects and trivial changes may not be listed. More can be found on my Github page
Work experience
Lagg.Me Freelance developer and sysadmin
Now based in Las Vegas near the Strip doing remote or in person web development, systems work and service deployment for businesses of various scale and requirements. From startup endeavors and landing pages to larger gaming businesses.
December 2018 - PresentCSGOShop Ltd. Head developer and sysadmin
The culmination of past efforts with old and new people coming together to develop a robust trading platform for the Steam economy that supported all participating games therein. CSGOShop drew on my 9 years of experience writing code for the Steam platform. Also incorporating scaling lessons I learned in other jobs since then to result in a high throughput item trading site that has facilitated more than $20m in transactions in less than 3 years.
I wrote and primarily maintained the core implementation while mentoring 2 junior developers and moving down the feature list. Making use of node.js' async strengths to develop a trading bot daemon capable of full network interface & proxy binding, console management, minimal self-contained REST API and well over 120 bots on a single server. CSGOShop featured fully transactional item buying, selling and seamless browsing of any game on Steam with an economy.
The frontend was written in PHP making use of memcached, mariadb and nginx. AMQP was used to queue trades from the frontend to the bots. The self-contained REST API was used for other IPC.
August 2015 - September 2018DOTA2Shop Head developer and sysadmin
Similarly to TF2Shop, began as a semi-functional prototype that diverged heavily from the codebase and had a corrupt repo history. Rewrote and merged back into the common TF2Shop codebase after writing a modular theme system and making the base item fetching system more workable for the disparate protocols dealt with at the time.
May 2013 - August 2015TF2Shop Head developer and sysadmin
TF2Shop was an early player in the Steam digital item economy with millions in revenue despite the difficulties in Steam's trading protocol at the time and our team size. We started with a semi-functional prototype that was rewritten into an automated storefront. Featuring a backend for delivery using a rolling order tracker queue. Used standard mysql setup for item storage and had at peak scaled to over a million items on a single server running nearly 100 trading bots written in C#.
October 2012 - August 2015
Volunteer work
- Official Team Fortress Wiki: Staff and system administration - 2011-2022
- Portal Wiki: Staff and system administration - 2011-2022
Education
Mohave Community College - 2008-2011