I’m a programmer, but that’s never been an official part of my job description. I aim to change that.
Interesting problems keep me up at night and get me out of bed in the morning. If you give me problems to solve, lunch will seem like an annoying chore instead of a welcome break.
If you’re looking for someone like that, let’s talk.
I wanted to make my résumé available as both text and HTML without manually maintaining two versions. I also wanted to learn a bit about Pyramid. The result was a small application that served both the HTML and the original Markdown source.
Then, I decided that was overkill and rewrote it using Flask, which is what you’re viewing now.
I can’t take credit for this idea, as it was being done at Georgia Tech, but in my role as system administrator at ADESA, I saw the need to implement it there. When I was hired, Linux machines were being tracked in an Excel spreadsheet. This is sufficient for getting information to human eyes, but I saw an opportunity to automate a large number of tasks by storing the information in a format that both humans and machines could get to. I also wanted to be able to view and change information in a variety of ways, rather than depending on Excel. The answer was OpenLDAP for a number of reasons.
This was my favorite project at Georgia Tech. To be successful, I had to create an application that interfaced with MySQL, the Enterprise Directory, Remedy, local files and processes, etc. I also had to design a flexible architecture that would allow us to specify access controls and user interface elements per software package if necessary. This application has suffered absolutely no downtime since I first made it "live" in July 2003.
There’s only so much you’ll be able to do without logging in, but feel free to explore the site.
Redesigning the FAQ was one of my first "projects" at Georgia Tech (when my primary role was answering phone calls and e-mail). Since the web site and back-end structure were designed in 1999, it doesn’t look very impressive by today’s standards, but on the other hand, it shows that I can write code that will run rock-solid without maintenance for many years. (The contents of individual entries are, of course, modified continuously.)
I should also point out that it was a great improvement on what we had. Prior to my involvement, this site was made entirely of static HTML pages for both FAQ entries and navigational menus. After my redesign, all you had to do was drop a new entry into place and the navigational menus would get updated on the fly.
This web site allows Georgia Tech users to change their password, reset a lost password by answering user-defined questions, manage their e-mail aliases, manage guest accounts, and set preferences for GT’s emergency notification system. I was not the primary developer or designer for this site, but I did a great deal of work on the back-end. I was responsible for getting the site to talk to our central account management system via XML-RPC and PostgreSQL queries and for getting it to look up directory information via LDAP. I also helped design a system to adjust the site’s functionality based on class of user.
Working on a site like this obviously requires an understanding of the various security risks to a web-based application and the techniques for mitigating them. In addition to helping guard against web-based attacks, I helped design a system to protect the contents of local files in the event of compromise.
skurfer.com began life as my first
home.html page in 1994 when I was at IU. I
registered a domain in 1999 and have expanded and redesigned the site many
times since then. It’s hosted on a Debian machine that I maintain.
I also test and discuss more technical subjects at http://projects.skurfer.com/.
(In order of proficiency)
Responsible for over 100 Red Hat based Linux servers as part of ADESA’s UNIX team.
Worked in the Office of Information Technology’s Architecture & Infrastructure group providing services to the Georgia Tech campus. Primary responsibilities involved building and maintaining web-based applications and performing a variety of system administration tasks.
Worked in OIT’s Customer Support Center and assisted students, faculty and staff with user accounts, desktop computers, OS specific questions, networking, remote access to campus resources and various other types of questions. Responsible for redesigning and maintaining FAQs, designing and implementing the software download interface, managing an intranet server, and maintaining 5 informational kiosks located around campus.
Studied Computer Information Systems in the IU School of Business. A strong interest in math and science is reflected in courses taken outside of the School of Business.
Regularly attend monthly meetings of the Indianapolis Python users’ group to discuss Python and other technical topics.
Created and maintained the club web page. Monitored and responded to club related e-mail. Organized teams to attend tournaments with other schools. Taught and learned various water skiing skills with other club members. Drove and maintained the club’s competition ski boat.