Вы находитесь на странице: 1из 8

KELAN BIRNBAUM

APPLICATIONS AND EXPERIENCE:


u Data Solutions
Application: Internet Survey System and Reporting Software
Kelan, as a Software Engineer, built several Cold Fusion and Java enhancements to the Internet
Survey System. Kelan also designed, developed, and supported C and VBA enhancements to the
Reporting System.
The reporting enhancements have allowed users to run a “network-enabled” version of the C
statistics engine, which creates an intermediate file that Word VBA macros take as input to generate
the final Word report. Network enabling the software has given us better control over the
environment and made it easier to deploy new versions of the software.
Kelan also developed a suite of test cases for regression testing that can easily be executed when
changes are made to the software. This regression suite helped to catch bugs early in both the
statistics and formatting engines.
All development was done in Cold Fusion, JDK 1.4, IntelliJ IDE, C, VBA, WATCOM IDE, and
SQL/Server.
WINDOWS 2000/XP, COLD FUSION, JAVA, JAVASCRIPT, C, VBA, JRUN, IIS, VISUAL AGE, INTELLIJ,
SQL/SERVER

u Local School
Application: Windows 2000/2003 Network
Kelan, as a Volunteer Network Administrator, built and maintains the school’s network. Kelan
supports users with various software packages, troubleshoots problems, helps secure the network
from Internet intrusion, and monitors/maintains the filtering software to prevent students from
accessing unauthorized sites/services. Kelan performs the typical administration duties on the main
network servers: backup, software updates/patches, security, user management, etc.
Kelan has also built a second Windows 2003 machine that serves as the school’s Exchange, Intranet
Web, and VPN server.
WINDOWS 2000/2003 SERVER, EXCHANGE, DNS, DHCP, IIS, SONICWALL

u Teksystems Project (Large Nonprofit Organization)


Application: Web Enrollment/Pledge Application
Kelan as a Consultant/Developer, designed and built a new web application allowing employees to
enroll and specify pledge amounts for their annual United Way campaign.
This is a pure Java application that utilizes servlets and a set of Java helper classes to process client
requests and send back responses. Business logic and presentation files are kept separate by building
a set of HTML template files that the Java server reads in at startup and caches. Special variable
substitution is used to dynamically update these cached HTML pages before they are sent back as
responses to the clients. Session data is maintained by the Java server and committed to SAP when
the user has gone completely through the pledge submission process.

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 2

All development was done in the JDK 1.4, the servlet API for the servlets, various other 1.4
components for the server, and JRun4. Eclipse was the main IDE utilized, with SAP/DB2 being the
underlying database.
JAVA, ECLIPSE, WINDOWS 2000/NT, IIS, JRUN, SAP JCO

u Teksystems Project (Large Nonprofit Organization)


Application: Employee/Contractor Time Reporting System
Kelan as a Consultant/Developer, designed and developed several enhancements to the
organization’s time reporting system. The time reporting application is the product that all the
employees use to enter their daily time worked against various projects, business cost centers,
absence types, or purchase orders (contractors only). It’s a multi-tiered solution utilizing a Java
client GUI, Java servlets, and Java server that manages session and data connections to an SAP
application server. The client GUI uses HTTP to communicate with the time reporting server.
Microsoft’s IIS is the web server used to accept a HTTP request, passing it on to the JRun servlet
engine which passes the request to the appropriate servlet. The servlet calls the time reporting
server, which in turn connects to the SAP server (if necessary) and performs other business logic to
carry out the request and return the correct response. Connectivity to the SAP application server is
accomplished via the SAP JCO (Java Connector). JCO is a Java middleware product supplied by
SAP that provides a set of Java APIs for creating and executing a custom set of ABAP procedures.
All SAP requests are sent and data received through this middleware and ABAP procedures.
When Kelan assumed responsibility for the application, it was a version 1.0 production application
with some basic functionality. Kelan has added several major features to the product over many
releases (currently at 3.2). Some of these enhancements include: 1) changing a user’s SAP
password; 2) manager’s approval/editing of a subordinate’s timecard and the ability to drill down
into all levels their organization to edit any subordinate’s timecard; 3) contractor time entry support;
4) new administration and super user capabilities; 5) timecard comparison features to help managers
approve timecards; 6) migration to the SAP JCO middleware from an older and less efficient
middleware product called JRFC; 7) additional and improved threading capabilities; 8) SAP RFC
consolidation for performance improvements; 9) ability to edit timecards from previous time periods;
10) updates to the requirements, design, and deployment documents, plus a set of Javadocs that will
help out future developers of this system. The new features have helped to make time entry an easy
process for employees, allow the business to efficiently track hours in SAP, and ease manager’s tasks
in tracking/verifying their subordinate’s timesheet, which helps them to take more responsibility in
the approval process.
All development was done in the JDK 1.2.2/1.3, utilizing Java Swing GUI components for the client,
the servlet API for the servlets, and various other 1.2.2/1.3 components for the server. JBuilder was
the main IDE utilized, with SAP/DB2 being the underlying database.
JAVA, JBUILDER, WINDOWS NT, IIS, JRUN, SAP JRFC, SAP JCO, VISUAL AGE, UML

u Pear Tree Technology Services Project (Data Solutions, Inc.)


Application: Web Survey System
Kelan as a Consultant/Developer, implemented new Cold Fusion templates for a Web Survey
System (WSS), particularly new templates for the system’s Status Inquiry reports. These Status
Inquiry templates allow a user to execute several different searches based on survey participants,
enrollments, and raters. Results from the searches could be used to determine the status of a survey,
make changes to a survey (i.e. add participants or raters), and possibly pick out participants or raters
who have not yet performed their survey duties. The templates were designed generically to be
driven with content from a database, making it very easy to use these templates in other areas of the
system and significantly reduce the cost of maintaining separate templates for each particular
functional area of the WSS. Users performing searches can also save their own customized content
for a given search, allowing them to quickly call up a search that they perform on a regular basis

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 3

without having to retype all the data. They can also display and hide the search attributes on the
template, allowing them to unclutter the page and display only the content that they want to see and
use. All the customized data was converted to XML using the WDDX features of Cold Fusion. This
made it easy to store and retrieve the content to reapply when a user called for it.
Kelan developed a Java servlet and server classes that the WSS uses to register a new participant,
process the participant, and assign surveys to the participant in the system. Several rounds of
validation are performed on the participant before he/she is registered and added to surveys.
All development was completed on Windows NT, using Cold Fusion Studio and Server to create the
templates, along with several stored procedures to retrieve and update WSS data. Java development
was done in the JDK 1.3, with Visual Age as the IDE. SQL/Server was utilized for the back-end
data services.
JAVA, VISUAL AGE, WINDOWS NT, IIS, JRUN, COLD FUSION STUDIO AND SERVER, SQL/SERVER,
XML, WDDX

u Pear Tree Technology Services Project


Application: Internet Hosting Provider
Kelan as a System Administrator, built and installed a Red Hat Linux server to support his client’s
web sites. The server was co-located with a local ISP and Kelan remotely administrates the system
from his home office.
Web services are supported with Apache, SSL, PHP, and MySQL. Email services are supported via
PostFix. Security is enhanced with ipchains and ssh, which is used to enforce who can remotely
access the server and from where.
LINUX, APACHE, SSL, PHP, MYSQL, POSTFIX

u Synergy Consulting Services Project (ObjectFX)


Application: Transportation and Logistics
Kelan as a Consultant/Developer, designed and developed several transportation applications
utilizing the power of ObjectFX’s SpatialX Java component library. These are GIS/spatial
applications (visually represent data) and typically provide a map, legend, tabular data, and a query
selection tool to help users query and track trucks (or other relevant objects) in real-time on the map
display. Some of these applications were demonstrations to show the capabilities of ObjectFX’s
software, and they used classes from the JDK and other third party vendors like Symantec and
Borland.
One of the fully featured applications Kelan developed was for a trucking company that needed to
track their trucks, stops, and routes for a given region. This application needed to be integrated with
the client’s current software, so some JNI development was needed to support communication with
various COM objects (e.g. login process). The application allows a user to select drivers, routes, or
vehicles to query on, and enter exceptions to search for (e.g. map trucks that were late by 15
minutes). All trucks, stops, and routes are tracked by accessing a SQL/Server database (data
populated from GPS or wireless data feeds). Data is refreshed at regular and configurable time
periods, allowing a user to track driver activities. Truck, stop, and route statuses are represented by
displaying each in different colors and images. Additional detail data is available on each object
displayed in the map, either through the tabular data or by interacting with the object in the map.
The application was set up as a three-tier solution, with the client connecting to a custom service (via
the SpatialFX server) that provided the database connectivity. Vehicles and shipments can be easily
monitored with this application, improving shipment time, and overall driver/vehicle performance.
For the main project, all development was done in the JDK 1.2, utilizing Java Swing GUI
components. 4JBuilder was the main IDE utilized, with SQL/Server being the underlying database.
The other smaller projects utilized Java 1.1, Oracle, and third party components from Symantec.

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 4

JAVA, JBUILDER, ORACLE, MS-SQL/SERVER, SQL, WINDOWS NT, SUN SOLARIS

u Pear Tree Technology Services Project (VCampaign)


Application: Internet Web Site
Kelan as a Consultant/Developer, created a web application that gives campaign workers the ability
to track many aspects of their campaign, with the main focus on tracking campaign contributions.
Once a campaign account is set up, an administrator can create additional user accounts. These users
can access the web site from anywhere they have an Internet connection to perform their campaign
duties. These duties include entering contributor and donation data, generating reports, tracking
campaign issues and how contributors are responding to these issues, plus facilitate communication
between campaign workers, administrators, and the contributors. All accounts are secured via a
password, and the site is secured with SSL technology.
Contribution reports can be generated to help campaigns conform to state guidelines. Contributor
profile reports can also be used to determine how contributors feel about the important issues and
which issues are most important to them. Group mailings are possible through email or printable
letters. These mailings can be directed toward workers or contributors, and selection criteria can be
used to filter the mailing list to a desired group (e.g. send letters only to contributors who strongly
support campaign issue #1). This system centralizes campaign data and allows flexible access to it.
Campaign workers can perform their duties from the home office or wherever necessary. Overall
productivity and efficiency can be greatly improved because of the easy availability of the data, and
the communication mechanisms the system provides.
All development was completed on a Linux platform, using Cold Fusion Studio on NT to access a
Samba network drive on the Linux server. Kelan used PHP to create the templates, along with
several embedded SQL statements to retrieve and update campaign data. Client-side JavaScript
functions were used for validation, to present additional information, and navigation control. Kelan
also created the MySQL database to store all the necessary campaign information. Some Apache
configuration tweaking was necessary to improve site security.
PHP, MYSQL, SQL, APACHE, JAVASCRIPT, LINUX, WINDOWS NT, SAMBA, COLD FUSION STUDIO

u Pear Tree Technology Services Project (Prugh Systems)


Application: Internet Web Site
Kelan as a Consultant/Developer, created a web application that allows investors to search for
investment information on various companies. Search criteria can be company name, industry,
sector, ticker symbol, and/or stock exchange. Search results can be used by the investor to find
annual reports online and/or request information from a company through their investor relations.
This system helps an investor to quickly find the financial data they need to make important
investment decisions, saving them both time and money.
All development was completed on a Windows NT platform with the IIS web server. Kelan used
Cold Fusion’s CFML to create the templates, along with several embedded SQL statements to
retrieve company data. Client-side JavaScript functions were used for validation and navigation
control. Kelan also created the MS-Access database to store all the necessary company information,
along with the necessary Access forms that allow his client to enter additional company records into
the database.
COLD FUSION SERVER & STUDIO, SQL, JAVASCRIPT, WINDOWS NT, IIS, MS-ACCESS

u Greenbrier & Russel Project (Cargill Research)


Application: Project Tracking System

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 5

Kelan as a Consultant/Developer, created an Intranet System that allows project managers to


maintain and track their projects. Kelan designed and developed Cold Fusion templates which
project managers use to view, create, modify, or delete project attributes. These include budget data
for a project and how it compares with actual expenditures, goals and milestones for the project and
percentage completed information for each milestone, keywords that could be used to relate different
projects together, time and expense approval for hours and expenses that have been created against a
particular project, and sponsor funding that allows projects to be funded by several different sponsors
and tracking the funding percentage that each sponsor has committed to. The system allows project
managers to stay well informed on the status of their projects and helps them to complete the
projects on time and on budget.
Kelan made several enhancements to the system based on end-user requests. One such enhancement
was to Project Authorizations. Before a project can be created, the concept has to be approved by
upper management. Kelan made the changes necessary for management to approve or disapprove a
project and if approved, allow management to create the project in the system.
All development was completed on a Windows NT platform. Kelan used Cold Fusion’s CFML to
create the templates, along with several embedded SQL statements and Oracle PL/SQL
functions/procedures to retrieve and update project data. Client-side Javascript functions were used
for validation and navigation control. Kelan set up a test system by installing the Cold Fusion,
Oracle7, and Microsoft IIS servers on his own NT workstation. Kelan administrated all aspects of
the test system, which allowed him to test the application thoroughly before migrating code to
production.
COLD FUSION SERVER & STUDIO, ORACLE, SQL, PL/SQL, JAVASCRIPT, IIS, WINDOWS NT

Application: Expense Tracking, Chemical Inventory, Nutraceutical, Time Entry, and Report Systems
Kelan as a Consultant/Developer, maintained other related Intranet applications, as well as designed
and implemented several major enhancements to these applications. Kelan implemented new
expense tracking modules for Requisitions (orders), Expenses, and Invoicing. These enhancements
streamlined the requisition approval process, the expenses interface, and the month-end process for
charging expenses to clients and invoicing them. The improved processes were more intuitive and
enabled end-users to be more productive.
Kelan added important expiration date functionality to the Chemical Inventory system. Some
chemicals become unstable after a certain period of time, therefore they need expiration dates
assigned to them so they can be properly disposed of before they expire. The enhanced system
determines if a chemical being added to inventory requires an expiration date, and if so, forces the
user to enter the date. Scheduled Cold Fusion email reports run on a monthly basis to inform users
which chemicals will expire within the next one, two, and six month periods.
Additional search capabilities were added to the Nutraceutical (nutritional compounds) application.
The old search engine allowed users to enter keywords that searched against publications, health
benefits, and patents, but results returned only links to the nutraceuticals that matched up with the
specific publication, health benefit, or patent where the keyword was found. The new engine returns
direct links to the publications, health benefits, or patents where the keywords were found, so users
can access information more quickly and efficiently.
Several enhancements and bug fixes have been made to the Java Time Entry system. The
application is split into two parts. A Java applet is used on the client to input hours worked on
specific projects, while a Java server resides on the web server that accepts and retrieves data
from/for the applet. When Microsoft IE 4.0 became the company’s standard browser, Sun’s Java
plug-in was utilized and the applet was converted from Java 1.0 to 1.1. The conversion to the new
Java APIs and event model provided a more consistent and maintainable environment to work in.
Kelan implemented several reports to help keep users informed of project, expense, and budget
information. One of the more complex reports was the Manager Report, which provided expense
and budget data at various levels of detail. At the top summary level, a manager can see the overall
expense and budget information for a given time period, but they can drill-down into more detail and

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 6

break down the numbers into each division, department, expense group, expense type, etc. Managers
can continue to drill-down into detail until they see the specific numbers for a given employee.
All development for the above applications was completed on a Windows NT platform. Kelan used
Cold Fusion’s CFML to create the templates, along with several embedded SQL statements and
Oracle PL/SQL functions/procedures to retrieve and update data. Client-side Javascript functions
were used for validation and navigation control. Chili! Reports was used in conjunction with Active
Server Pages to retrieve data from the database and stream it to the client machine, where Microsoft
Excel macros would take over to format the data into the proper report. This technique was used for
printing invoices and purchase orders. Symantec Café was used in developing the Java Time Entry
system. Kelan set up a test system by installing the Cold Fusion, Oracle7, and Microsoft IIS servers
on his own NT workstation. Kelan administrated all aspects of the test system, which allowed him to
test the applications thoroughly before migrating code to production.
COLD FUSION SERVER & STUDIO, ORACLE, SQL, PL/SQL, JAVASCRIPT, VBSCRIPT, IIS, WINDOWS
NT, CHILI! REPORTS, ASP, JAVA,EXCEL MACROS, SYMANTEC CAFÉ 1.0 & 2.0

u Green Tree Financial Corporation


Application: Decision Support/OLAP System
Kelan functioned as a DSS Developer. Initially he developed a “proof of concept” application in
Cogno’s Impromptu and Powerplay and Seagate’s Holos OLAP tools. Based on the information
learned from the “proof of concept,” Seagate’s Holos tool was chosen as the development
environment. Kelan designed and developed two business scenarios for the accounting and treasury
departments. He worked with the end-users to gather their requirements and transform them into a
Holos application that allows users to analyze the performance of “loan pools” that are marketed on
Wall Street. Both scenarios contained similar dimensions like Time, Products, Facts, Age, LTV,
Region, and Division. Previously, the company’s data was spread out over several different systems
and business units. However, this problem was solved because these scenarios used a data
warehouse that allowed central access to the company’s data for common reporting, decision
support, forecasting, multi-dimensional analysis and other analytical functions.
All development was completed on HP-UX and a Windows 95 platform. Kelan used PL/SQL to
migrate data from the legacy systems to the data warehouse. SQL was embedded within the Holos
applications to retrieve data and build the multi-dimensional structures. Platinum’s CCC/Harvest
was the Configuration Management tool used for source code control. Kelan also wrote an
initialization UNIX script that was executed when a user started up the Holos client application. The
script initialized the Holos environment on the server side, set up log files, checked for errors, and
downloaded files to the client if its files were obsolete.
HOLOS, POWERPLAY, IMPROMPTU, UNIX SHELLS, ORACLE, PL/SQL, SQL, CCC/HARVEST, HP-UX

u American Cancer Society


Application: Internet Web Site
Kelan, as a Volunteer Developer, assisted in the development and maintenance of the Minnesota
division American Cancer Society web site. The site provides important information to cancer
patients. Kelan’s responsibilities included developing and maintaining HTML and Javascript
functions for various pages on the web site as well as maintaining a Perl script for the feedback form.
HTML, PERL, JAVASCRIPT, LINUX

u Andersen Consulting Enterprise (Via)


Application: Airline/Flight Booking

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 7

As a Programmer/Analyst, Kelan worked on a project to develop a system to allow users to request


flight availability and book flights. He was responsible for the design and development of the
communications subsystem which linked clients with an external Airline Reservation System (ARS)
and various Java API’s that handled user requests such as flight availability. These APIs take user
requests, convert them into EDIFACT strings and pass them on to the communications subsystem.
Communications starts a session with the ARS and passes the EDIFACT to it. The ARS reply is
received by the communication subsystem and it passes the EDIFACT reply string back to the
waiting Java API process. Additionally, Kelan developed a Lotus Notes database to help track and
store project documents. These included design, workplan, and meeting minute documents. Kelan
also mentored team members for cross training purposes and knowledge transfer.
All Java development was completed on Sun Solaris, while the communications subsystem was
developed in C on the Stratus computers using Network Express. The Lotus Notes database was
developed on Windows 95.
C, JAVA, ORACLE, NETWORK EXPRESS, LOTUS NOTES, TCP/IP, SNA, x.25, EDI, SUN SOLARIS,
WINDOWS 95

u Andersen Consulting Project (Williams-Sonoma)


Application: Electronic Commerce
Kelan functioned as a Technical Leader on an electronic commerce project. The system was a
World Wide Web application designed to allow customers to browse products online and purchase
them with a credit card via a secure transaction. Kelan’s responsibilities included designing the
business functionality of the product including the initial product load into the database and
subsequent updates. He also was the product administrator of the Netscape merchant and commerce
server, which was key in guiding the design
C, ORACLE, HTML, JAVASCRIPT, NETSCAPE MLE, NETSCAPE MERCHANT, COMMERCE SERVER

u Andersen Consulting Project (National Marrow Donor Program)


Application: Double Data Entry(DDE)
Kelan, as the Project Leader, led a small development team that implemented a double data entry
system (DDE). Critical patient and donor data is sent in on hard copy forms and entered via a
“Forms” data entry application. After the data has been entered the first time, another person uses
the DDE application to enter the same forms again. This process enforces higher data quality by
forcing double entry of critical data into the system, comparing the entries, reporting discrepancies,
and then allowing the data to be corrected through a well-defined process. Kelan created the
conceptual design, project work plan, detailed design, system test plan, software conversion plan,
user documentation and a training plan. Kelan also assisted with implementation of the design and
supervised two other programmers with the implementation.
All development was completed on Sun OS and Windows 3.1. The core development was
completed in C, but some GUI development was also completed via the UCT environment.
C, UCT, METHOD/1 & DESIGN/1, SYBASE,UNIX SHELLS

u IBM
Application: Hardware Configurator
Kelan as the Developer/Architect, developed several different subsystems using the IBM
KnowledgeTool environment that configured various components of an AS/400. IBM
KnowledgeTool was a rule-based language that allowed developers to create “Expert Systems.” The
configurator took customer orders for an AS/400, configured it and provided instructions to
Manufacturing on how to build the order. Cross-platform development was supported on IBM/370s
(CMS and MVS) and AS/400 in order to support both in-house manufacturing and an upgrade
configurator that was used in the field to upgrade existing AS/400s.

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837
Kelan Birnbaum
Resume
Page 8

While serving as Architect, Kelan was responsible for studying new hardware releases in order to
determine how the configurator design would change to support the new hardware. He acted as a
liaison between the Manufacturing IS Team and the development team.
Kelan also participated in the development of a replacement configurator written in C++ using
Object Oriented Analysis and Object Oriented Programming techniques. The new configurator was
developed on RS/6000 workstations running AIX. Kelan designed and developed several C++
classes that handled various configuration concepts such as Disk Balancing, Mirroring, and Raid.
PL/1,KNOWLEDGETOOL, C++, C, IBM 370 (MVS, CMS, VM), AS/400, RS/6000 (AIX), Booch (OOD),
Coard-Yourdon (OOA)

Pear Tree Technology Services, LLC 14470 Upper Guthrie Court, Apple Valley, MN 55124 Phone: (952) 237-9837

Вам также может понравиться