|
|
Resume
Shawn Poulson
Email: jobs@explodingcoder.com
http://www.explodingcoder.com
Objective
To use my technical skills and software development experience to benefit a team of IT professionals.
Keywords
System Administration experience: Windows NT/2000/2003/XP, MOM 2005, IIS,
Apache, Linux, SAP R/3, PeopleSoft, SQL Server, Oracle, MySQL.
Software Development talent: .NET, C/C++/C#, Windows forms, STL, DLL, MFC, COM,
Win32, SQL Server 2005, HTML/CSS, ASP/ASP.NET, Perl, CGI, mod_perl, VBScript,
WMI, Java 2, XML/XSLT, Visual Basic, Palm handheld applications, integrating
latest technology and complex data structures, Relational data modeling, Code
design patterns, SubVersion source control, Software quality testing, unit testing
black box/white box concepts, user interface design/ergonomics.
Requirements
Desire to work in Delaware or vicinity.
Travel: 25% or less.
Salary: Market value.
Completed Projects
Oct 07, Data access layer software development project
- Project acquired via rentacoder.com. 1 month term.
- Design and develop a data access layer library in .NET 2.0 that maintains
'nodes' of data associated with a variable data member schema.
- Deliver test harness application that performs black box quality assurance
testing on all library functionality.
- Code written in C# .NET 2.0 framework.
Aug 04, MMCd Tools
- Author of open source project http://mmcdtools.sf.net.
- Windows application that binds with Palm HotSync to convert MMCd datalogs
into human readable Excel sheets. Automatically converts datalogs on the Palm
to XLS on the PC upon pressing the HotSync button.
- Code written in C++, Win32, COM.
Mar 03, MMCd data logger customizations
- Contributed to an existing open source project http://mmcdlogger.sf.net.
- Added new GUI functionality to Palm handheld application used to datalog
automotive diagnostic sensors.
- Code written in C, compiled with GCC cross compiler.
Experience
Nov 04 - Present, ING Direct
Wilmington, DE
System Administrator III (as of May 07)
- Administrator of over 500 Windows 2000/2003 servers, Microsoft Operations
Manager 2005 (MOM), and Active Directory.
- Participate in weekly change management process.
- Follow strong adherence to ING Direct's SDLC policy, which mandates testing
of all system or code changes in the QA environment.
- Maintain Active Directory environments for production, QA, and development
networks.
- Custom scripting using VBScript and WMI to deploy specialized MOM monitoring
rules and automated alert responses.
- Develop, rollout and maintain a new login script scheme to automate role-based
mapping of network drives and deployment of customization of specialized
applications using Active Directory group membership and business rules
written entirely in VBScript.
- Secondary support of VMWare infrastructure, SMS 2003, Exchange 2003, and
Dell server hardware.
Jun 99 - Nov 04, SAP America
Newtown Square, PA
Basis Support / Tools Developer / System Administrator
- Trained in use and implementation of SAP R/3 version 4.0B to current on Windows NT/2000 and Linux with SQL Server, Oracle, and SAPDB.
- Manage a large scale of over 2000 high end R/3 servers for Training/Demo/Consulting resources used globally.
- Perform weekly distribution (`refresh') of very large database image to a large number of servers.
- Specialized in custom application development and scripting/automation using languages and technologies such as: NT/Unix shell scripting, Perl, Visual Basic, Visual C/C++, COM.
- Specialized in custom web site development using: HTML, Javascript, CGI, ASP, Perl, Visual Basic/COM, SAP Web Application Server, XML/XSLT. Tools written to automate many types of processes.
- Database development experience on SQL Server, MySQL and other leading edge technologies.
- Expert in developing automated solutions, such as: Database 'refresh' copy, FTP copy with email confirmation, Information and collaboration over web.
- Work with a team of IT colleagues in Germany and Singapore for global 7x24 system support and task sharing. This involves regular global meetings in US or Germany.
Nov 97 - Jun 99, Avetel Professional Services
King of Prussia, PA
Senior Field Engineer
- Specialist in networking, Unix, Windows, desktop and laptop PC hardware.
- Lead developer in design and implementation of Avetel's web page and corporate graphics.
- Roll out 200+ Windows NT, Outlook, and Siebel software to all field sales laptops at GE Capital TIP, San Francisco and Chicago offices. Roll out 300+ Windows NT and Outlook to all laptops and desktops.
- Roll out mailserver running SCO Unixware for Lehigh Carbon Community College. Configured Sendmail settings. Used Perl scripting to automate creation of global address book settings and importing of existing mailboxes.
- Installed QIP 3.1 IP Management software on Solaris 2.51 at Hershey Foods, Mack Trucks, and Independence Blue Cross.
- Write technical documentation for all projects.
- Trained on wide range of networking and communications hardware and technologies by 3Com, Cisco, and Bay Networks.
Nov 96 - Nov 97, Interstat, Inc.
Mt. Laurel, NJ
Technical Support for Internet Provider
- Performed all levels of technical support for end-user clients and corporations, such as: ARI Fleet Management, Fox and Lazo Realtors.
- Installed and supported dialup and browser software for Windows 3.1, Windows 95, and Macintosh platforms.
- Assisted in web design projects. Built database of cars and images for www.arifleet.net. Built several small web sites.
- Assisted in Unix administration of BSDI, and SGI IRIX servers. Managed user accounts, debugged mailserver errors, modified configuration of Sendmail, shutdown/startup of web server processes, editing DNS server configuration.
- Written technical documentation of technical support tasks.
Jan 96 - Nov 96, Rutgers University Computer Services
Camden, NJ
Help Desk Support
- Available at computer lab help desks for questions and assistance.
- Support dialup software for Windows 3.1 and 95.
- Support applications on lab PCs and Sun Sparc workstations.
- Support all network printers for PC and Sun usage.
Education
Microsoft Certifications:
- MCTS certified .NET Framework 2.0 Windows Client Development
- MCTS certified SQL Server 2005 Administration
- Project Management College - Project Risk Management
- Java 2 Training
- MCSE 2000 Training
- SAP20/SAP50 - Intro to SAP R/3 4.0B, Intro to R/3 Basis Technology
- BC310 - R/3 Basis on NT/Oracle platform
- BC505 - Oracle 8 Database Administration within R/3
- BC400 - ABAP Workbench
- Peoplesoft 471 - Server Administration and Installation
1995-1997 Rutgers University Camden, NJ
- Major in Computer Science
Technical Experience
- Strong in application development, particularly using technologies listed in
the keywords section at top.
- Strong background in TCP/IP networking and architecture.
- Administrating Microsoft Windows operating systems, Linux, Active Directory.
Background
My background comes from self-taught hobbyist studies starting as far back as my
early teens. I started with Atari Basic on an Atari 130XE, learned 6502 machine
language and wrote code in assembler to produce small graphic effect demos in
effort to learn more about the platform. I transferred my assembler knowledge
to a 486, then learned C and C++. Though, it is not typical to learn assembler
before a higher level language, I feel it gave me direct insight as to what the
C/C++ compiler does and I can optimize my code accordingly.
I have been a big fan of what is known only as the
"demoscene", where talented coders, graphic artists, and music composers work
together to create audio/visual demos featuring the latest in coding techniques,
graphic talent, and synchronized music. These creations often exceed the
capabilities of the current market of video game technology. Often these works
are put head to head at competitions held around the world. I've attended one
in Montreal, called North American International Democompo in 1996, where I've
entered a small piece for a collaborative demo entry. More can be read about
the demoscene at pouet.net or at the
demoscene FAQ.
I've since expanded my skill set into understanding the
Windows API, common windows DLL libraries, COM objects, and networking
functionality at the C/C++ level.
I am also very proficient with the Linux platform, including
development using C/C++ and Perl. I've used Apache web server to create several
web applications in ways a Windows IIS server could not.
At a past employer, SAP America, I've been given the freedom
to complete projects however I felt best. I've used this flexibility to learn
new technologies. For web projects, I've mastered ASP, CGI, VBScript, Perl, and
even touched on mod_perl a bit. For automation, data reporting, and conversion
tools, I've mastered using Perl to quickly and easily generate tools to do many
tasks most would not imagine Perl would be capable of. Creating web and
interactive tools led me to also master SQL Server and MySQL as database
backends to create powerful relational data models.
More recently I've studied the .NET framework, including
Windows Forms, ASP.NET and ADO.NET. This is clearly superior to ASP and I plan
to continue using it for future web work. I am currently MCTS certified in .NET
2.0 Windows client development.
I'm always looking to learn new technologies. If there is an
API or framework I don't know, I can come up to speed very quickly.
Past Works
- Role-based Login Script
As ING Direct grew, its resources were growing
towards a role-based permission design. To facilitate this development, a
better design was needed for the dozens of one-off login scripts made for
various job functions. I developed a VBScript-based login script that inspects
Active Directory group membership and applies business rules in the code to
determine what network drive mappings or other actions should happen as a
result. With this design, all users have the same login script. Upon login,
all requirements for job function is determined only by the groups the user is a
member of. This project effectively eliminated maintenance of per-user login
script settings and introduced flexibility of defining customized solutions
based on job function.
- Dr. Library
A custom file copy tool written in C# .NET Windows client to automate the copy
of files in a SharePoint 2003 document library to another document library,
preserving all file dates and version history. There are no Microsoft tools to
do this, so I needed to write my own to complete migrations of documents between
SharePoint sites.
- http://www.explodingcoder.com
This is my personal web site that I designed to hold content about myself and
host some small web-based applications. I used Photoshop and The GIMP to design
the graphics. I also use a common CSS stylesheet for the entire site.
- As a performance car enthusiast, I've looked into utilizing the computer
diagnostics of my car. I've collaborated with a talented coder in Russia, who
created a powerful open source datalogging tool written in C, called MMCd, that
runs on a Palm handheld and connects to a compatible car's computer diagnostic
port. It can monitor and log any of the sensors available.
In addition, I've studied the Palm HotSync Conduit API and Excel COM Automation API to
write a tool written in C++, called MMCd Tools. This tool syncs with the Palm,
transfers a recorded datalog to the PC and converts to Excel or CSV format for
easy viewing on the PC. In conjunction with MMCd, this tool is also released as
open source and is available on SourceForge.
Information, screen shots and file download can be found at:
http://www.explodingcoder.com/mmcd.html
- Web-based scheduling tool "ServOp". Can run a command on any number of
target servers at a scheduled time by creating AT jobs in Windows Task
Scheduler. Jobs can be staggered by n minutes and commands can be templated so
that variables can be inserted for each target server, creating a useful method
of issuing commands like: server reboot, file copies, Windows patching tools,
and database refreshes. This was written using Perl/CGI with a SQL Server
backend.
- Web-based "News tool". This is a popular tool in SAP for reporting news
items in a forum-like interface. Each team in IT gets their news pages, where
they can post news bulletins with status levels (red, yellow, green, etc.). The application has controls for per-page user authorizations based on Windows authentication.
This was written in ASP with Perlscript and SQL Server backend.
- FTP tool. At SAP it was necessary to FTP many very large files from their
German servers to our US servers for use during the week's database refreshes.
A need arose for an automated method of grabbing these files automatically over
the weekend without user intervention. I wrote a tool in Perl to easily specify
the ftp site as source and a target directory for the files. It will then get a
directory listing and transfer all files like a regular FTP tool. In addition,
it used multi-tasking to transfer up to n files at a time, thereby utilizing the
multi-channel ATM network between sites. Compared to a standard FTP client
script, this tool was able to transfer at least 4 times faster, allowing our
team to handle the hundreds of gigabytes needed to transfer every weekend. It
was also found that adjusting the TCP window size in Windows to 64k doubled the
transfer speed.
- PSSDB. This is a team-based effort to create a server and software
inventory at SAP to account for both datacenter and internal billing use in the
'PSS' team. Using SQL Server, an elaborate relational data model was created to
account for all servers and software installed on each. Each software instance
could be billed to a cost center for a certain amount. A VB front-end was
created for admin maintenance of data.
Monthly reports were automatically generated with Perl and emailed to costcenter
owners and Finance. Costcenter owners could also visit a web front-end that
summarized their monthly charges before the month-end bill.
In addition, monitoring capability was added to the database and with Perl-based
monitoring tools to check up-status of certain types of installed software.
Administrative web-based reports were also created for monitoring status,
incorrectly entered server or software data, or billing data. These reports
were created using SQL Server's SQLXML extensions. You create SQL queries that
generate XML data which is converted to HTML using a custom XSLT stylesheet.
- TaskDB. The PSS team at SAP lacked an easy way to track projects owned by
members of the team. After reviewing several other applications, none seemed to
meet the needs. I came up with a web front-end to an easy to use task
management tool that anyone can create their own tasks and maintain their
information. The TaskDB quickly became accepted by the team. Weekly status
meetings can simply review the list of open tasks in TaskDB. TaskDB was written
in ASP with SQL Server backend.
- Cell plan web site. At the time the telecommunications department was
issuing hundreds of cell phones to approved employees around the country and
each one had its own calling plan with AT&T or Voicestream. Certain people were
generating extreme phone bills with legitimate overage minutes and required a
higher minute calling plan than most. I designed a web front-end using ASP and
SQL Server's SQLXML extensions to create XML/XSLT interfaces to allow managers
once a year to review their employee's current cell phone plans and choose a new
plan for each if necessary. This required data munging of existing spreadsheets
from telecom to be imported to SQL Server. AT&T is able to deliver a
recommendation for each calling plan, based on minutes and overage. This was
also imported into the database as default calling plans. Once all managers
have made their selections, I used Perl to generate a report of all changes and
summary of all cell phones and their calling plans. The first year netted a
savings of over $64k/year for 600 calling plans.
- Remote inventory web site. The asset management team did not have a good
third party application for tracking and polling users for equipment ownership.
I wrote a web front-end in Perl/CGI with MySQL backend on Linux to guide users
through a series of simple screens to gather their pertinent information about
the company materials they have in their possession. When the inventory period
ends, a report is generated with all inventory and employee ownership and
delivered to the asset management team. In addition, this tool used SSL
client/server certificates to automatically determine the remote user login when
the client runs SAP's own Single Sign-on solution.
|