Alan W. Szlosek Jr.

email alan.szlosek at gmail

Last updated: May 17, 2010


Education

Bachelors of Computer Science, August 2007
Florida State University in Tallahassee, FL

Recently Used Skills

At work: PHP5, PDO, MySQL, JavaScript, jQuery, JSON, C#, SOAP, XML, WebDAV, Visual Basic 6, creating Wordpress themes, Subversion, Basecamp and Highrise APIs
At home: Python, PHP5, MySQL, Sqlite, JavaScript, jQuery, JSON, MusicXML, C, nCurses, Mercurial, Git

Work Experience

July 2009 to Present

Telecommuting Software Engineer for Qgiv and Cipher Integrations (see below).

November 2007 to July 2009

Software Engineer @ Cipher Integrations, Inc. & Qgiv, Inc.

For Cipher Integrations

Visual Basic 6 application that reads DDE input from a third-party application, formats the data as XML and sends it in a SOAP call to a third-party web service.

A project needing two C# applications -- The first reads data from an SQL Server database, generates Excel spreadsheet templates from the data and emails the files. The second connected to Exchange through WebDAV, waited for email to arrive, processed any Excel attachments contained within and updated a database accordingly.

Developed a time-slot scheduling web application. People seeking legal counsel can choose a meeting time slot. The app can take into account holidays, lunch, and any other configurable blackout ranges.

For Qgiv

Daily I act as the primary programmer for Qgiv, and online donation processing system for non-profits. My job also includes collaborating with co-workers over new features, their implementation, database design, code design, roadmaps, etc. We use subversion for source control.

Interacting with Basecamp and Highrise APIs to add and search contacts, tags, milestones and comments.

Implemented an XML API for our Qgiv partners.

Re-worked the system core to enable more than 1 line-item to be billed at a time.

Enhancing tools to shorten the setup time for new customers.

Implemented several major user interface cleanups and enhancements, including an overhaul of our Events, Reporting and Recurring billing systems.

In an effort to reduce the amount of time spent handling paper faxes, we've created a fax-automation system that makes use of GFI FaxMaker software. The system also helps us better manage clients through the entire application process, specifically by talking with Basecamp and Highrise through their XML APIs.

Debug and improve communication with credit card and check processing gateways, including Authorize.NET and Chase PaymenTech.

May 2006 to August 2007

Remote PHP Contractor @ 540 Interactive, Inc.

Brought an in-house online store framework to maturity for two clients. GNR has three online stores selling self-help medical products. The stores use the same core code and database data. Printing4Pros is an online print shop that sells banners, business cards and related projects. Customers can upload graphic files to be used in printing. The framework is of the MVC flavor, with database abstraction, markup separate from business logic, a few too many singletons, etc.
Technologies: jQuery, PHP5, MySQL, ORM, PostgreSQL.

Learned and utilized the CakePHP Framework for an online mortgage broker service application.

Stepped in to maintain a Ruby on Rails application for yoga classroom management. It's essentially a point of sale system with student attendance tracking. I continued to maintain it up until November 2008.
Technologies: Mongrel, JavaScript, AJAX

Developed and used my own database abstraction class and templating system on a few projects where beneficial.

Provided detailed estimates of project difficulty and required man-hours, which was used to formulate the overall project estimate and timeline.

August 2004 to December 2005

Programmer and System administrator @ 540 Interactive, Inc.

Acted as the lead developer, working with zero to two other developers on projects.

Customized and maintained the Content Management Systems that ran YoungMoney.com, MilitaryMoney.com and other InCharge websites.
Technologies: PHP, MySQL, image manipulation, database abstraction.

Integrated SugarCRM with a private jet charter auction website, feeding auctions and bids into Sugar.

Implemented countless other website "mockups" using PHP, MySQL, JavaScript and CSS.

Light to moderate use of Object-Oriented Programming, Database Abstraction Objects and templating systems for many of the projects.

Set up client websites in Apache and MySQL and kept server software up to date.

May 2002 to July 2004

ColdFusion Programmer @ StratoNet, Inc. (Internet Service Provider)

Designed, implemented and maintained database structure and code for the company website.

Customized news article software for a client wishing to create a local news website.

Development was done in ColdFusion utilizing MySql, JavaScript, CSS

Learned PHP to create a call center application for logging technical support calls and issues.

Wrote a windows application distributed on dial-up internet setup CDs that helped customers find a local dial-up number for internet access. User selected their state, a local number, then the application generated a "set" file used by another application to create the dial-up connection. Written in C using the Win32 API.

Personal Projects

My github repositories can be found at http://github.com/alanszlosek

mercussion - marching percussion DSL and compiler

Allows tech-savvy marching percussion composers to input music FAST and generate audio (via MIDI and a soundfont), PDF and MusicXML versions of their compositions.

Written in Python 3, utilizing midicomp, lilypond, a freely available soundfont and Timidity++ to get the job done.

Knox - Terminal Multiplexer

Akin to GNU screen in that it allows allows multiple terminal sessions to be run in one, split-screen style. Enables system administrators to SSH once to a machine and run multiple console applications at once.

"Command window" provides the ability to send the same shell command to more than 1 terminal at a time.

Written in C. Makes use of nCurses, libiterm OR my own alternative to libiterm (TESI), and unix pipes.

Autoform - PHP5 Form Builder/Validator

Carries much of the the burden involved in building large HTML forms.

Generates HTML and performs secure, server-side validation of input.

Returns submitted form data that passes validation (ie. matches the regular expression validation patterns).

I'm proud to announce that this project is now included in PHPMailer-FE, a popular PHP solution for sending emails.

dbFacile - PHP5 Database Abstraction Class

The goal is to be easier to use than alternatives, present a simpler API, and still be featured enough for large projects.

Connects to MySQL, PostgreSQL, SQLite and SQL Server. Prevents SQL injection.

Returns data in native PHP types.

Code specific to a DBMS (MySQL, PostgreSQL, etc) is encapsulated in driver class for that DBMS.