About Me
- Full-stack Web development/architecture in a variety of technologies, primarily Python/Django, but also includingJava/JSP, ColdFusion, PHP, and Node.js; extensive experience building high-performance data-driven applications using Django/R...
- Project design and planning for bringing a concept from initial specs to deployment, and ability to pivot to new features/functionality as indicated by emergent needs as data and usage grow
- High-availability, secure e-commerce site development and deployment with continuous integration
- Front-end JavaScript platforms include Angular, React, jQuery, and visualization libraries such as D3, as well as many popular APIs such as Google Maps and Google AdWords
- Database experience spanning many years covering MySQL, PostgreSQL, Oracle, MongoDB; deep understanding of database optimization techniques that complement higher-level implementations like Django ORM PHP experience including custom WordPress and vBulletin sites in hobbyist and professional applications.
- Mobile app development in iOS (Objective-C and Swift); several commercial apps published
- Team leadership experience running groups of 4-6 developers in Agile and Kanban methodologies
- Extensive UNIX administration experience (FreeBSD, Mac OS X, Linux, Solaris, others)
- Author of several books on FreeBSD, Mac OS X, and other topics (see below)
Skills
Web Development
Mobile Apps
Development Tools
Programming Language
Operating System
Database
Others
Positions
Portfolio Projects
Company
The Lion King Fan-Art Archive
Description
The TLKFAA is a site I first developed back around 1999 to serve the fan community of the Disney movie. It has been in continuous operation and under iterative development ever since then, switching first from Perl/CGI to Java/JSP, and finally to Python/Django. The user base peaked in 2005 at around 10,000 active users, and while it has been steadily declining since then, the project remains as a means for me to hone my skills and develop new features using modern technologies, such as collaborative drawing environments, asynchronous server-side processing (using Celery), and innovative sharing features that I invented and have since been adopted into other popular art-sharing sites (such as adoptables, art trades, character registration, etc).
Show More Show LessCompany
ReBleep
Description
ReBleep is a social media app built around physical contact with recipients using QR codes on printed cards. Django back-end, iOS/Android/JS front-end clients. Fully productized; in production (though the app is not currently in the App Store).
Show More Show LessSkills
Android Django iOS Objective-C PythonTools
Android Studio XcodeCompany
Performance Rentals
Description
PRI is an exotic car rental e-commerce site built on a ColdFusion back-end with custom admin and CMS; HTML5/jQuery front end. In production for years.
Show More Show LessSkills
ColdFusion JQueryTools
NanoCompany
Drumline
Description
Work-in-progress.
This is an application that I'm developing in order to pitch as a mobile app, with the intended audience being middle/high school band directors. The goal is for the director to be able to press a button and have all the members of the percussion section randomly assigned to all the pieces in a program or performance that they are currently working on. Each player must be assigned in such a way that they do not play the same instrument on more than one piece; and the assignments must allow for differing skill levels to be assigned to various instruments and to the players such that no player is assigned to an instrument above their skill level. An additional twist is that there are "compound" parts (such as "P1", "P2", etc, as called out in sheet music) which comprise multiple instruments that one or more player moves between throughout a song.
The app is written as a SPA in VueJS/Nuxt with a Django backend API. The idea is that the web app is usable as a demo of the functionality, and if I am able to attract a patron I can develop a native iOS/Android app using the same API and front-end workflows.
user: tester@nope.com
pass: test123
Show More Show Less
Tools
PyCharmCompany
ThinkPackage IMS
Description
ThinkPackage is a high-end retail packaging company based in Manhattan. They contracted me to build an inventory management system (IMS) to handle their daily operations: preparing and shipping orders, restocking, accounting, warehousing, and a client-facing site allowing contracted customers to reorder their products. There is an associated iPad app which allows the warehouse workers to build pallets in preparation for shipping, and to inventory incoming shipments from the suppliers. The IMS site also produces reports and data analysis in various formats on demand. The IMS is built in ColdFusion, and I have recently rebuilt it from the ground up in Python/Django.
This is not a public-facing site; credentials for the dev site are available on request.
Show More Show LessCompany
RailTime
Description
RailTime is a system that I built several years ago with the idea of building it into a mobile app. The idea is that commuter rail users need to know, by just opening the app, what train they are on and whether it's late (or early), and by how much. This is accomplished through the use of GTFS data (published regularly by rail systems such as NJ Transit) which contains all the timetable data, combined with my own work developing a data set of GPS regions that encode the rail routes themselves and regular waypoints along each route. Through GPS, the app knows what segment of the rail system the user is in, and via the API receives a quality-sorted list of possible trains that the user might be on. In most cases, the topmost result is the most likely match, and the app shows a list of upcoming stops, along with an adjusted ETA. The user then knows when they'll be arriving and can convey this info to someone who is picking them up, for example.
This is an experimental and unfinished system, and not really in a presentable state. Credentials for the dev site where I manipulate and visualize the data set can be provided.
Show More Show Less
Company
Death Star
Description
The system I am responsible for at Essence Global. Death Star is a compliance management system for digital ad campaigns that are run through Google AdWords, Twitter, and other channels. It is a distributed API-crawling system with multiple worker nodes, continuously querying the AdWords API (and others) to check the health and configuration of some 300,000 campaigns being maintained by the world's largest advertising organizations. It flags violations and brand safety risks and produces reports and visualizations over time allowing the campaign managers to observe their campaigns' performance and correct misconfigurations that cost their companies money.
Death Star is built in Python/Django, using Celery for distributed asynchronous tasks, and AngularJS for the client-facing front-end.
This is an internal, credential-protected site.
Show More Show LessSkills
Asynchronous I/O Django Google AdWords Development JavaScript Linux Python Go Lang PostgreSQL Object Relational Mapping - (ORM) Git React.Js Docker Kubernetes RedisTools
Google Cloud NanoCompany
FlyCleaners
Description
I was one of ~4 founding developers who built the FlyCleaners system from scratch to deployment in about 3 months. This is an app-driven laundry/dry-cleaning service in New York where a customer summons a delivery truck driver via the app to arrive in (usually) about 15 minutes, with the time estimate generated in real-time. The laundry is picked up, weighed/inventoried, and dropped off for cleaning overnight, then the customer is notified in the morning that it is ready for delivery, which can again be summoned from the nearby delivery driver (which is magically carrying their order thanks to technology that maps drivers to geographic areas).
I built the tablet app (AngularJS/PhoneGap) which directs drivers to their next series of destinations and walks them through the procedures of checking in/unloading/loading/delivering orders, as well as the API (Python/Django) which feeds the app. I also built the internal order management system (FlyCommand) which the support staff uses to handle orders, track customer issues, deal with billing, and many more functions. There is also a live chat system (Node.js/Express) integrated between FlyCommand and the tablets which the support staff uses to communicate with drivers in real-time as they move through the city. I also built visualizations of the day's upcoming orders and events—a timeline displayed on the office wall on a huge TV, indicating where on a map each driver is, and what series of events each driver is headed to throughout the rest of the day. There are numerous other smaller tools I built as part of this project (a vendor-servicing tablet app to be used by the dry-cleaning provider to help inventory and track orders, a customer issue tracking system, etc).
These tools are all internal and cannot be demonstrated, but FlyCleaners is still operating in Manhattan and Brooklyn using the technology platform I largely built. I can provide videos that I captured of some of the above-mentioned visualizations.
Show More Show Less
Skills
Angular.Js Django Express.Js Google Maps API JQuery Node.Js PhoneGap Python DevOps AWS Git SQL NginxTools
AWS