|
Software Developer
User
Interface and Application Architecture
As a developer with over 20 years
of experience designing, implementing, and releasing professional
commercial software applications, I can make a significant
contribution to your design and programming needs. My experience has
been primarily in developing Microsoft Windows applications with a
focus on user interface design as well as application architecture
design and implementation. I strive for innovative designs that can
accommodate possible future improvements. I am available for both
short and long term contracts as well as permanent
positions.
Work History
Consulting
JoeProgrammer (owner)
7/2006
– ongoing
Autoliv
1/2012 – 12/2012
Logitech
7/2006
– 10/2007
Logitech
9/1998
– 11/2005
WebCam
applications
Connectix
Corporation
7/1997
– 9/1998
WebCam applications;
Desktop customization app
McAfee Associates
3/1996
– 6/1997
Online
payment/antivirus; Personalized backup app
Micrographx,
Inc
8/1994
– 3/1996
Vector
drawing application
MapLinx
Corporation
8/1992
– 8/1994
Database/geographic mapping application
Merit
Technology
10/1990
– 8/1992
Radar/weather simulation solutions
Texas
Instruments
6/1988
– 9/1990
Custom software language development for custom
hardware testing system |
Education
Milwaukee School of
Engineering
Bachelor of Science in
Computer Science &
Engineering
Graduated May 1988 Major GPA
3.6
Technical Skills
Languages and libraries.
C/C++
MFC (Microsoft Foundation Classes)
COM (Component Object Model)
Java
XML
Operating
Systems.
Microsoft Windows (3.1, 95, 98, XP, Vista, 7)
using C/C++ and MFC
Android
VAX/VMS using C and Pascal
UNIX using C with custom multiprocessor
environment
Tools.
Microsoft Developer Studio
Microsoft SourceSafe
Microsoft Team Foundation Server
Eclipse
Strengths/Skills
Commercial Software
Development.
Involved in the release of many commercial
software applications and successive releases.
User Interface
Design (UI/UX).
Worked both individually and in groups to produce
easy-to-use user interfaces.
Software Engineering
Methodology.
Active in all parts of the engineering methodology
to produce software that adheres to requirements, contains good documentation, and provides ease of testing and
maintenance.
Innovative/Problem
Solving.
Use of object-oriented code with architecture that
is easily expandable to shorten successive releases and
improve code maintenance.
Technical
Leadership.
Provided Developer Lead responsibilities for
numerous projects.
Large group
projects.
Experience coordinating among large projects
between different levels or engineering, marketing, project
management, and testing teams as well as end-users.
Interpersonal
Skills.
Productive team member who strives for group
cohesion and
communication. |
|
|
Major Projects
|
Run-In/GainCal/Camera Studio/Label Printer Autoliv
- contract: Oxford International |
C++, MFC, GDI/GDI+, Windows |
Testing and production line software exercising infrared cameras used for
consumer automobile pedestrian-dectection system.
Duties: Added enhancements to existing software and created new
production floor stations. Worked on architecture and user interface as well as
communication with hardware test equipment and cameras.
|
|
Blik Calendar Widget
JoeProgrammer |
Java, Android |
Android homescreen widget which shows calendar appointments
by displaying an image to represent events by inspecting the appointment text
(patent pending). Released on the Android Market August 2010.
Duties: Concept, design, implementation, marketing, graphic design.
|
|
Video Mask User Creation Tool
Logitech - contract: JoeProgrammer |
C++, MFC, GDI/GDI+, Windows |
Allows end-user to create Video Masks for use with
Logitech QuickCam software Video Effects.
Duties: Application implementation and UI/UX design.
|
|
Video Masks
Logitech - contract: JoeProgrammer |
C++, MFC, GDI/GDI+, Windows |
Video Effects allow end-user to apply effects to the video stream of a Logitech
webcam. Video Masks extract user’s eyes and mouth from the live video stream and
perform isometric projection on to a static image.
Duties: Proposed isometric
projection concept. Implementation of extraction and compositing of live video
on to static image for every frame. Performed extensive optimization to reach
high frame rates required.
|
|
MPT (Model Packaging Tool)
Logitech - permanent and contract: JoeProgrammer |
C++, MFC, SourceSafe COM, Windows |
Used internally at Logitech by marketing, content management, QA, engineers,
and the build team to manage, track changes, and create the
model packages that are used for Logitech QuickCam Video Effects.
Duties: User Interface Design. Implementation. Defined work flow states.
Worked with all tool users to make successive modifications as new Video Effects
types were added. Created encryption obfuscation mechanism.
|
|
QuickCam software (v5.0 through v8.x)
Logitech |
C++, MFC, COM, Windows |
Version 5. Allows end-user a variety of ways to use their webcam in an
activity-based user interface.
Duties: Dev Lead, User Interface Design, COM plugin architecture design and
implementation, Capture Picture and Video plugin, Gallery plugin (used by all other plugins).
Version 6. Support for detachable QuickCams added.
Duties: Dev Lead, User Interface Design, QuickSync.
Version 7. Application broken apart to use more of the built in Windows
operating system programs.
Version 8. Support for Video Effects added which allowed the live video
stream to be manipulated in any application which uses a Logitech webcam.
Duties: Dev Lead. User Interface Design. Video Effects application architecture
design.
|
|
QuickCam software v4
Connectix |
C++, MFC, Windows |
Original QuickCam software allowing end-user to
record video or take pictures with their webcam.
Duties: Worked to greatly improve the user interface without
modifying the underlying software architecture.
|
|
Desktop Designer
Connectix |
C++, MFC, Windows |
Allows end-user to create and manage themes for Windows 95 in a concise user interface
with support for background, sounds, cursors, and colors.
Duties: Major contribution to existing user interface design. Implementation.
|
|
McAfee VirusScan e-commerce
McAfee |
C++, MFC, Windows |
First implementation of VirusScan95 in conducting electronic commerce for application
and virus definition file upgrades.
Duties: Designed method of enforcing web-side policies regarding
end-user’s subscription. Implementation.
|
|
QuickBackup
McAfee |
C++, MFC, COM shell extensions, Windwos |
Allows end-user to create scheduled backups, but also backup/restore individual files.
Duties: Redesign of user interface, implementation. Windows virtual folder shell
extension design and implementation. User interface for using tape driver integrated
directly into Windows Device Manager.
|
|
Windows Draw
Micrographx |
C++, MFC, Windows |
Vector drawing application for Windows 95.
Duties: Contribute to user interface design. Extended MFC toolbar classes to
provide popout/tearoff toolbars. Implemented OLE (Object Linking and Embedding) to
provide container, server, clipboard, and drag/drop functionality.
|
|
MapLinx for Windows
MapLinx Corporation |
C++, MFC, Windows |
United States mapping application for database information.
Duties: Major contributions to speed and implementation. Added additional user
interface functionality.
|
|
Radar simulation/prediction projects
Merit Technology |
C++, UNIX |
SAGEM Radar Predictor. Library for third party customer to simulate radar
images from terrain reflectivity data.
WXRS (Weather Radar Simulator). HW/SW add-on to existing aircraft simulators
to simulate weather radar.
|
|
PSTS (Processor Subsystem Test System)
Texas Instruments |
C, VAX/VMS |
Internal development project used to test proprietary hardware.
Duties: Participated in a large team of engineers working on many interconnected
subsystems. Developed the test language and implemented Loader subsystem to load a
program and construct data structures for the executable subsystem to run.
|
|
|
|
|
|