I’ve been doing some type of programming since I was 8 years old.
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.
So, aside from creating impressive bulleted lists (below), what else can I do? Most of my experience boils down to either web development or system administration. It’s rather difficult to show examples of system administration, but some of the projects I’ve worked on are discussed below.
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 experienced 100% uptime since I first made it “live” in July 2003, until I left Georgia Tech in June 2008.
The site is no longer accessible from off campus, but if you happen to have access to their VPN, feel free to check it out.
Redesigning the FAQ was one of my first “projects” at Georgia Tech (when my primary role was answering support phone calls and e-mail).
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 system remained stable with minimal maintenance for over 10 years.
Of course they’ve moved to a different system since 2008, so this link won’t demonstrate my work, but here it is anyway.
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 (faculty, staff, student, etc.).
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 https://projects.skurfer.com/.
(In order of proficiency)
As a developer at a small consulting company, I work on dozens of projects in different areas, from managing servers to front-end design.
My primary role involves writing Python code, but I’ve also ben able to apply my experience as a sysadmin. I spend much of my time working with Django, PostgreSQL, Redis, Pipenv, Buildout, and other tools common in the Python world.
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.