So continues the saga of how I talked my boss into building a custom CRM and put my ass on the line. In this thrilling episode, I want to go back to the beginning of process. Right to the beginning.
Well, I was born at a very early age… Oh, no. Wait. Not that far back.
First we planned. During this phase of the project, I put together a functional outline. A 22-page document that outlined what we wanted to do from a functional standpoint. While this doesn’t fit the criteria of a traditional, “scope document,” I wanted to get the, “what,” down on paper and wait till I could collaborate with a programmer to decide the, “how.” So I spent a few weeks going back and forth with the GM to decide what we wanted to get from the new CRM.
Once I had this “what,” document, I started looking for a programmer who could handle it. I knew I wanted a couple of things.
- Someone who would be willing to work on site (someone local). My experience as a web producer has taught me that no matter how tightly you define the project, there will always be changes along the way. Something you didn’t pre-think that came up during the work process. It’s proven a good approach. Having them work on-site (I actually put an extra desk right in my office), has been a huge benefit.
- Someone who would work cheap, but do quality coding. We’re not a software company, so this couldn’t spawn a new, “division.” It must be a finite project and could not take a, “time and materials,” approach. A flat fee would be best. It would encourage the programmer to work quickly, while my supervision would make sure that there was no cutting corners. The reality of the job market now makes it a challenge for students matriculating out of college to get good full-time positions right away. Talented youngsters, under the supervision of someone with the right experience creates a balance of enthusiasm, creativity, and usability.
Fortunately for me, Western Michigan University has a great computer program and it’s less than a mile away from our main store. So I contacted a professor in the computer science program that I knew with and asked him to recommend a recent graduate who hadn’t settled on a job, but who was smart and had a good work ethic. He recommended Bill and I set up an interview to cover the functional outline I had created. From there, Bill developed a technical outline using the right choice of techniques and technologies to get the job done. Then we worked out a flat fee and a timeline for the project. Bill works in the office about 25-hours a week plus works another 10-15 hrs a week from home.
After the first couple of months, it became clear that there was a steady flow of what I call, “gnats.” Little nuisances, glitches and bugs that needed dealt with. Also, some necessary minor features. I wanted to keep Bill focused on the major areas of functionality, so I started looking for a way to bring in a second programmer to handle these bits and pieces, without breaking the bank.
The other programmer, Jason, is actually an intern (a junior at Western). I’m paying him $8/hr and he’s getting 3 course credits for about 20-hours per week. Jason is here about 20 hours per week through the end of the school year (April). In addition to tweaking the CRM, he’s working on several other web-based marketing projects, including our revamped website, helping me program the real-time reporting functions..
As we brainstorm functions and features, we can prioritize based on what’s most urgently needed and what’s quick and easy to do. I also break out which jobs Jason is capable of handling and which need to go to Bill. I have a dry-erase board in my office with the weekly goals. I meet with the GM every week to decide what new features we’d like to add. Because of this, the CRM will probably never really be “done,” but it means we can constantly be improving and evolving the system to meet our needs. When Bill has completed his part of the project, we actually have two other big projects that he’ll be working on with the same flat-fee scenario. Since the intern/programmer concept is working so well for us, I’ll probably bring in another after Jason’s stint is up.
Maybe it’s my background, but I believe that just about any business can profit from having a relationship with a programmer. Not just a webmaster, but an actual web application developer who has the skill to create anything from custom databases, to custom reports. It’s surprisingly easy if you are in or near any metropolitan area to find gifted youngsters capable of doing the work when properly supervised, and surprisingly inexpensive.
In our next thrilling episode, I’ll be looking at what makes for a really good CRM.