I am currently employed as an enterprise architect and not actively pursuing a new job. I mostly keep my resume online because way back In 2001 I (like thousands of other programmers that year) went through an "everyone here is fired" experience. Since then I've kept my resume current and online just in case it happened again. If something really amazing came along though then of course I'd be interested in talking.
The web page version of my resume is more of a portfolio that will probably drive recruiters insane. If you want a traditional boring version head over to my LinkedIn profile.
10 Second Career Summary
Current position: Enterprise Architect at a growing SaaS provider with a wide breadth of technologies due to mergers & acquisitions. I am responsible for driving the technology strategy to integrate these systems into a unified platform. There are more details over at LinkedIn.
2012 - Senior Application Architect (call center applications)
2010-2011 - Solution Architect (WebSphere Portal & mobile technologies)
2006-2010 - Lead Developer (WebSphere Portal 5-6)
2001-2006 - Lead Developer (ASP .NET, C# .NET, SQL)
1998-2001 - Developer (Visual Basic 6, Visual C++ 6)
Education: Masters in Computer Science from University of Illinois: Chicago
Please note, I have no interest in the following:
Contract work lasting under 1 year.
Anything requiring regular travel or relocation outside of the Chicago-Milwaukee area... OK I'm completely open to relocating to Seattle, London, Dublin, Austin, maybe Vancouver but it's a very short list. I'm also open to a virtual position with light travel (4-8 weeks a year).
Mercator development or implementation projects - I haven't touched a Mercator product in over 14 years and the company hasn't even existed for 10. Yet I still get 1-2 emails a year from desperate companies stuck on some long unsupported version of one of their applications. I'm sorry but you're boned.
I have had nothing but negative experiences with 3rd party recruiters, if you are not a direct representative of the hiring company then I'm probably not interested.
I know the "not interested" section could make me come across as a
jerk, that's not the intention. It's really there to help others to
avoid wasting their time. There's always a chance I know someone who is
interested in one of these positions so I might be able to give you a
referral. I usually don't know a lot of good developers who are out of work though.
Below is a portfolio of past projects I've delivered and my role in them. Some screenshots have been edited to remove trademarked logos where necessary.
Application Overview: Custom portal for 2,000 call center representatives located in the United States and Philippines. This was integrated with multiple customer data sources using Tibco as the middleware. The first release was built in just six months to support the opening of new call center location.
Stuff I Did: I was originally brought onto this project to manage the infrastructure planning and deployment activities. Then the timeline was cut from two years to six months and the development lead quit. At that point I picked-up managing the development team along with the infrastructure work. Obviously we couldn't deliver everything in the original plan with the new timeline so I worked with the business team to prioritize the key features into seven development iterations. I managed the day to day development and reviewed all the code. The project was quite a death march but at the end of the seventh iteration we had a fully functional site. Shortly thereafter I moved into a solution architect role and worked on integrating this portal (and the one listed next) with a new lead management system.
Application Overview: Custom internet-facing portal for 40,000 independent sales producers. This portal was integrated with dozens of legacy system to provide the user with a single access point for information, reports, and transactions. In 2011 we added lead management capabilities using Tibco for middleware and workflow.
Stuff I Did: I started off as a lead developer which entailed writing a few portlets but mostly coaching other developers on the team. I also screened all the offshore developers and reviewed their work. Over the course of three years we migrated about a dozen applications to this portal. Sometimes we rewrote the entire application as a portlet, other times we scraped the UI entirely and only integrated with the legacy back-end through a web service. I left this project to work on the call center portal (above) and after that was complete I moved into the solution architect role for both portals. Like the call center portal, most of my time was then spent on integrating lead management and workflow capabilities.
Sales Producer Content Site
Role: Lead Developer
Technologies: ASP & C# .NET 1.2-2.0, SQL Server 2003-2005, CruiseControl, Interwoven Teamsite
Application Overview: This was the precursor to the previous application. It was a more simple content site and home page for 40,000 independent sales producers. The site offered several user customization options and provided custom SSO into other applications.
Stuff I Did: I wrote all the data access services in C# and most of the stored procedures. I also administered the continuous integration & build process which was one of the most fun things I've worked on.
User Administration Site
Role: Solo Developer
Technologies: ASP & C# .NET 1.2-2.0, SQL Server 2003-2005, CruiseControl
Application Overview: Administrative site to manage users and repair back-end data problems.
Stuff I Did: 90% of my work on this site involved writing large, somewhat complicated, stored procedures.
Mobile Sales Application
Role: Solution Architect
Technologies: HTML5, C# .NET 3.5, Citrix Receiver for iOS/Android
Application Overview: This was an internal "skunk works" project aimed at piloting various capabilities with a group of high performing sales producers. The iOS/Android native application was very light with most of the UI done in HTML5. Citrix was used for access to intranet applications.
Stuff I Did: I worked on the back-end integration to the customer search and content management services. I also wrestled with putting together a seamless SSO experience for launching Citrix applications. All the hands-on work was done offshore and I met with the team every morning to review their daily builds.
Application Overview: This is the official mobile application for the gaming site 1MoreCastle. Allows users to articles in a device-optimized format and download podcast episodes. It makes extensive use of AsyncTasks to keep the UI responsive while images are loaded in the background.
Application Overview: I authored a set of Android applications to track video game collections. They all use SQLite to store local copies of the collection and interface with the eBay REST API to search for games.
Application Overview: Trading Partner was a B2B application sold by the now-defunct Mercator Software. It enabled electronic data interchange (EDI) transactions between companies. Sometime in 2001-2002 it was sold off to a company called EMANIO who still supports some ancestor of it.
Stuff I Did: I wrote some reporting and user administration UIs in Visual Basic 6. I also worked on converting the desktop application to a client-server model, that involved changing several back-end C++ APIs.
Technologies: Visual Basic 6
Application Overview: This was a homegrown customer relationship management (CRM) application used by roughly 10,000 sales producers.
Stuff I Did: The main piece I worked on was building some predictive analytics algorithms to recommend which products to sell to a customer.
Web Site Design
The Retro League Podcast
Role: Solo Designer (also co-host of the podcast)
Overview: Custom theme with a distinctly 80s arcade feel to it.
M.S., Computer Science - University of Illinois, Chicago (2004)
Thesis: "Neural Networks-Based Detection of Computer Network Intrusion"
Relevant Coursework: Artificial Intelligence, Numerical Methods and Computing, Computer Simulation and Modeling, Operating Systems, Concepts of Programming Languages, Data Structures and Algorithm Analysis