Barney D. Media

Workforce Management System

We had a fairly major problem in the office, so our VP asked my team to work on a solution for automating the process. It was a fairly major system to setup and we only had a few weeks to get a working demo. In the end, troubleshooting and a few other things necessitated a longer release time, but we had something working within our original timeframe.

We ended up creating a custom object oriented javascript framework on the front, including a centralized AJAX controller based on jQuery’s methods that could candle common feedback (like dropped connections or invalid post data), or pass it back for custom handling where it was called from. The whole project spanned about 13k lines and records a few thousand transactions each year.

Code Igniter helped on the backend, but in the future we’ll likely jump ship to work with something like Laravel. This is mainly because we found a bug with Code Igniter that causes some undiagnosable session dropping errors. It doesn’t break the app by any means, but I would want to avoid the issue in the future.

The time-off request process typically was taking 3-4 weeks for sign-off and official approval, which was totally unnaceptable to all involved. We ended up shrinking the process down to 2-3 days by introducing our system, and more specifically by providing daily queue summary emails to remind managers to approve new requests.

Below is a quick video (HTML5) we cut together to showcase how to use the system.


A Custom CMS for our SOP

Below are some stills from something I created a while back at work. I did most of the design and programming for it, and for what it is, it does a pretty solid job.



The SOP was crazy long, and at the time it was stored on a file server as a Microsoft OneNote file. That was problematic because at the time, OneNote wasn’t available for Mac (70% of our office) and the document required constant revisions by multiple parties.

I took this as kind of a learning oppurtunity and built a custom CMS from scratch, using PHP and Javascript+jQuery. The styles were made to be responsive and most of the front-end javascript was used to ease the navigation process. Most of the backend was setup as an editing suite, driven by AJAX and included basic features like version control, a WYSIWYG copy editor, and version diffing.

There was one technical glitch we had quite a time with. There were a couple of sections of that were failing to save for an unknown reason. I later figured out that I had underestimated the size that some of the SOP sections would grow to, and that the ones failing to save were exceeding the limits of a MySQL text field ( >65KB ). I then upgraded them to a Large Text field ( ~4GB ) and we had no problems after that.

Updated Some Newsletter Templates

At work I have been working on updating some of the older generic newsletter email layouts. We send out a condensed version with links to read more on the website, which either lead to a CMS created page or a standalone page that we upload by hand (archaic, but it works well enough). We’re going through some upgrades to our sending software, but at least these are ready to roll when we do.