Christopher Smith
Objective
I am looking for a senior development or architect role where I can contribute my experience in a wide variety of development and implementation projects to solving problems. I'm adept at finding the right solution for business needs and delivering one thing: a product to a customer. I'm fluent with all the current Microsoft development technologies, and I can apply them effectively and intelligently to the situation at hand. Because I've had experience both as a single contractor and in a team of over 30 developers, I'm comfortable working alone without supervision or in a peer-reviewed team setting.
My ideal job is one where I have a high degree of autonomy, but also the opportunity to work with other developers, stakeholders and customers. Unlike a lot of developers, I like talking to customers and figuring out how I can help them solve their business problem. I also love it when I can take a couple hours with my team and a whiteboard and solve a technical problem that would take anyone else days or weeks with emails, meetings, and UML.
About me
I like to consider myself a technologist: I love technology for its ability to solve problems. I'm not a fanboy, although I am pretty fond of my Mac and i-devices which is a little odd considering I've made my living with Microsoft products. But I guess that goes to show that I see the merit in all of these things. I consider C# my "home" language, but I also love the expressiveness and flexibility of JavaScript. I like Node's async-ness. I like ASP.NET MVC's out-of-the-box experience. HTML5 is the greatest thing ever to me, but I tolerate XAML pretty well too. I play with Xamarin.iOS in my free time and read about obscure database index algorithms on my lunch breaks. I'm pretty awesome at SQL, but I think CouchDB makes a whole lot of sense for most stuff people want to do.
Work Experience
- Present
-
Senior Software Engineer
ProActive Technology/Kopis - Greenville, SC
11/2014 - Present- Developer for various client projects, including a ASP.NET WebForms performance/responsive design upgrade, a customized SharePoint list process, and a greenfield Node.js/PostgreSQL application
- 2014
-
Senior Developer
Team IA - Columbia, SC
02/2013 - 11/2014- Senior developer on the Trade Readjustment Allowances program, replacing a greenscreen mainframe application with a webhosted Silverlight rich client application. This project made heavy use of Entity Framework, Unity IoC, WCF and RIA Services. It utilized the MVVM design pattern and followed SOLID principles for architecture design.
- Completed a Sharepoint 2007 to 2013 migration project. This involved a new site master page and theme as well as migrating all current content and workflows to the new site with minimal down time.
- 2013
-
Senior Developer
AMEC - Greenville, SC
10/2012 - 02/2013- Various Sharepoint 2007 and 2010 development and maintenance projects
- Maintained and redeveloped an Outlook addin that allowed users to archive emails to a SharePoint document library
- 2012
-
Contractor/Side Work
Katalyst Network Group - Hickory, NC
10/2009 - 2/2010Created a customized Sharepoint 2007 portal for a Charlottebased doctor’s office. The portal was intended to be a single clearinghouse for employee information and records. It included Infopath forms and a custom import module for material safety data sheets. In addition, the look and feel of the portal was customized to match the customer’s frontend site.
-
Programmer Extraordinaire
CSI Technology Outfitters - Easley, SC
10/2009 - 10/2012- I was mainly responsible for the architecture and maintenance of the Policy System for CSI's K12 cloud email solution. This system integrated with Active Directory and allowed administrators to provision resources in the Microsoft Live@Edu cloud and set rules for communication and general configuration. It uses SQL synchronization to copy the desired resource configurations to a datacenter where they are queued for a scalable “job worker” to process them. The system is expandable through the use of dynamicallyloaded assemblies that are installed on the customer site.
- I was also responsible for rearchitecting and maintaining the ASP.NET security provider that is used in the customer Sharepoint portal. It allows authentication to a local AD but also keeps a cache in a SQL database for faulttolerance.
- In addition to these major projects, I contributed to the architecture for the WCF communication systems as well as our remote configuration system.
- 2009
-
Programmer Analyst
The Cliffs Communities - Travelers Rest, SC
1/2009 - 10/2009- Created a web application to manage and track member preferences and positive/negative experiences
- Implemented a sales reservation tracking system in Sharepoint 2007
- Developed several frontend websites using DotNetNuke and Umbraco
- Created a web application that integrated with a property management system to export properties for sale to a frontend website.
- 2008
-
Senior Developer
SDI Networks - Greenville, SC
5/2008 - 12/2008- Developed a system monitoring solution that created weekly PDF reports based to show system uptime and utilization
- Set up a reporting site using SSRS that imported call log data from Cisco call manager software
- Created websites for various clients using Umbraco CMS
- Implemented a Sharepoint workflow application that interfaced with an Ektron CMS-based front-end site
- Developed an XML import service to import leads from LendingTree into Microsoft CRM 3.0
-
Senior Developer
Websitepipeline - Greenville, SC
1/2007 - 5/2008I was responsible for creating and maintaining the tools that other developers use to create custom ecommerce websites. These sites are based on both classic ASP with a custom build system and ASP.NET 2.0 with a custom framework, as well as a SQL 2000 backend. I also created backend processing systems similar to SSIS or other ETLs.
- 2007
-
Senior Developer/Team Lead
Kaplan University, Ft. Lauderdale, FL
7/2004 - 12/2007In my role, I was responsible for maintaining the existing site as well as projects to enhance it. Major projects include a complete site relaunch from Classic ASP, VB6/COM and .NET 1.0 to the .NET 2.0 platform, as well as writing various backend management tools. I also wrote technical and sometimes functional specifications for projects, gathered requirements from business stakeholders and delegated work to other developers.
- 2004
-
Software and Systems Developer
Energy Control Consultants, Inc, Ft. Lauderdale, FL
6/2003 - 6/2004Developed a work order system based on Microsoft .NET (ASP.NET 1.1 and VB.NET) technologies. It used a databasedriven decision tree to automate all business processes. It made use of an MVC software architecture to deliver this product on both a web site, a Blackberry and a custom touchscreen panel. The application interfaced with hardware building control systems across the country, and was used extensively by both end-users and backend support staff.
- 2003
-
Web Developer
Leasetrader, Hallandale, FL
5/2002 - 4/2003Developed complete search engines for both backend sales and frontend consumer portions of the web site. The frontend search involved sophisticated dynamic SQL query generation to create associative recommendations for searches. I enabled multiple photo capability of vehicle listings, as well as maintaining existing codebase making heavy use of Microsoft IIS, Active Server Pages, and SQL Server 2000. I made extensive use of client-side technologies such as JavaScript and DHTML, and led the company initiative to move from Classic ASP to Microsoft ASP.NET.
- 2002
-
Contractor/Side Work
CBS Interactive (formerly Sportsline.com), Ft. Lauderdale, FL
4/1998 - 8/2007- Developed a proprietary Photo Editing Application (with capabilities similar to basic PhotoShop LE) using Visual Basic and TIBCO. This tool was used by the SportsLine.com news team to edit, compress, and deploy all photos for the web site.
- Developed a realtime data entry tool using Visual Basic and TIBCO. This tool provides the data entry department the ability to easily enter current game status data for MLB games via a simple user interface and then places that data into the SportsLine.com content database.
- Developed an enduser screen saver application for the TigerWoods.com and SoccerNet.com web sites. The application periodically pulls updated information and images from those web sites and presents the info to the user via a screen saver (somewhat similar to the old PointCast screen savers).
- Developed a TV broadcast “image grabber”. Periodically grabs images from CBS broadcasts, converts the images to webfriendly JPEG format, and deploys them to the SportsLine.com web servers. Developed using Visual Basic.
- Developed a Usability Tool. Monitors users behavior when interacting with different user interface prototypes. Captures objective information (clickstreams, time spent per page, etc.) as well as subjective information (opinions on ease of use, brand satisfaction, etc.).
- Developed a custom HTTP "sniffer" application for troubleshooting server/network issues
- Created an intranet portal for employees using Sharepoint 2007. This included an employee directory, meeting and collaboration sites, as well as some custom web part development. The site made use of AD integration and an import of a legacy database (using the web service API) for the employee directory. It also involved setting up subsites for each department with a wiki, message board, document library and sitespecific permissions.
- 1998
Skills
Programming Languages
- C#
- VB.NET
- VB6 (don't judge me)
- HTML/HTML5
- JavaScript
- XAML
Frameworks/Stacks
- ASP.NET
- ASP.NET MVC
- Silverlight/RIA Services
- Umbraco CMS
- Node.js
- AngularJS
- jQuery
- WCF
- Azure (SQL, tables, VMs, websites)
Data
- SQL Server 2000 - 2012
- Entity Framework
- RavenDB
- CouchDB
- Lucene.NET
- Postgres
- ElasticSearch
Architectures
- MVC
- CQRS
- MVVM
- Event Sourcing
- SOA