Alan Conroy

14016 35th Ave. S., Tukwila, WA 98168,
www.conroyhome.net/alan [email protected]


Work Experience

1-2012 to present Biblesoft, Des Moines, WA. Sr. Software Engineer.

Responsible for MySQL database design and maintenance, server-side PHP code, including an administration panel, running on Ububtu servers in the AWS environment. Implemented a web service in PHP, with a javascript API for the client-side which used AJAX to communicate with the web service, thus isolating the client and server sides so that either could be changed without having to change both. The web service responded to requests using JSON, which the api converted into Javascript objects or values. I wrote functional and regression testing for both the PHP and the Javascript API. In addition, I wrote an api-generator which allows one to create a simple definition file and then have the program generate both the Javascript API and the PHP web-services handler.
I wrote an SGML markup-to-SQL converter in Lazarus running on Windows, which I then used to import large amounts of data into the databases. I wrote extensive technical documentation on all of the above.
I was responsible for all maintenance of the desktop application, written in C++ and Delphi, in addition to all of the technical documentation for it.


2-2000 to 1-2012 Biblesoft, Des Moines, WA. Lead Programmer/Analyst.

Technical lead for a small team of programmers doing maintenance and enhancements of company's product, consisting of over 800,000 lines of code in C++ and Delphi, running on Windows. The user interface was written in Delphi, and included a displayer/editor. The displayer/editor supported bi-directional languages at a time when that wasn't supported by Windows. The back-end was written in C++. I was responsible for the UI architecture and coding, and maintenance of all the code, including retrofitting the back-end to compensate for some serious design flaws. I wrote technical documentation, led architecture of enhancements, and set development direction in response to product needs. There was a small amount of code written in assembly as well. I also did some maintenance of MS Word macros written in Word BASIC. In addition, I wrote a macro scripting capability for the product for the purposes of regression testing, which eventually came to be used for customizations to the program.


9-1998 to 2-2000 Leap Computer Solutions, Tacoma, WA. Associate Consultant.

Implemented in-place Y2K conversion solutions in IDML, C++, and Delphi for customers.


3-1995 to 8-1998 Biblesoft, Des Moines, WA. Senior Programmer/Analyst.

Responsible for maintenance and enhancements of company's sole product, and generalization of existing code. Primarily responsible for design and implementation of user-customizable front-end for new program. Some maintenance of C++ as well.


3-1989 to 3-1995 Timeline Inc., Bellevue, WA. Programmer/Analyst.

Responsible for developing new software packages, writing documentation, and maintenance programming using C, DEC BASIC, VAX assembler, TPU, and DCL. Projects included developing Utility Billing software from specifications, Electronic Conferencing software from scratch, maintaining the subroutine library for all products, and upgrading several products through various versions, including creating a 140K line Job Costing system. I created and maintained several hundred pages of technical documentation as well as user's guides. My last project was converting all of the financial packages (about 800,000 total lines of code) to run on openVMS on both the VAX and AXP hardware platforms.


3-1988 to 3-1989 Timeline Inc., Bellevue, WA. System Manager.

Responsible for system operations, management, and systems programming on VAX/VMS and PDP-11 (RSTS/E) systems using BASIC and DCL. Major accomplishments included documenting all aspects of communications wiring, telephony, and networking, installing new network capacity and new equipment, upgrading old equipment, designing and overseeing the implementation of hardware and software migration paths, implementing security measures to protect data integrity, and doing cost analysis and ROI research for recommendations to management. I organized and oversaw the hardware and software maintenance and ensured that vendors met their obligations to the company. I created the first on-line disk defragmentor for the RSTS/E operating system.


6-1986 to 7-1987 AMR Information Services, VFS division, Seattle. Operations Manager.

Managed operations staff, implemented a tape management system for BSD UNIX, and did systems programming for UNIX and PDP-11 systems.


9-1985 to 5-1986 Seafirst Computer Services Inc., Seattle, WA. Systems Support Analyst.

Hardware troubleshooting, system tuning, training, and systems programming on PDP-11s running RSTS/E.


9-1982 to 9-1985 Seattle Pacific University, Computer Center, System Manager.

Managed operations and student staff of two to six people, and did system programming in assembler, BASIC, C, and Pascal on PDP-11s running RSTS/E. I created a system monitoring and tuning package that I used to maximize system performance. Served as a technical "help desk" for programming staff.


9-1981 to 6-1982 Seattle Pacific University, Computer Center, Academic System Manager (Practicum).

Managed operations for the academic system (a PDP-11 running RSTS/E). Responsible for security, upgrades, harware and software maintenance, and systems programming.


2-1981 to 9-1981 Why Systems Inc., Redmond, WA. Programmer (Consultant).

Wrote code for the Digicalc spreadsheet.


2-1980 to 2-1981 City of Seattle, Fire Department, Seattle, WA. Programmer (part time).

Wrote code in COBOL and FORTRAN running on a Univac with VS/9.


Other experience

Besides building several web sites, I have created and maintain numerous open source projects including:


Education

BS, Seattle Pacific University, 1982. Major: Computer Science with Business emphasis (business administration minor).


Training

AWS Self-paced Labs: 2016.

Borland Symposia: 1996.

DECUS Seminar: 1982 (business graphics).

DECUS Symposia: Fall 1980, Fall 1982.


Skill Inventory

NOTE: "Level of experience" below has the following categories: Low, Moderate, High, Very High, "Guru"

Programming Languages:


Name
Most recent
experience

Total Years

Level of expertise
Assembler
80x86 AssemblerPresent25High
PDP-11 MACRO19906High
Z80 Assembler19822"Guru"
RCA1802 Assembler19801Very High

BASIC
Microsoft Word BASIC2010.5Low
DEC BASIC19965Very High
BASIC-Plus-2199011Very High
BASIC-Plus199014"Guru"
Apple BASIC1984.5Low
TRSDOS BASIC19821"Guru"
UNIVAC BASIC1981.3Moderate
AOS BASIC19781Moderate
HP-2000 BASIC19772Very High

C/C++
Borland C++Present15Moderate
Borland C20101.5High
UNIX C1987.5Low

FORTRAN
TRS80 FORTRAN1982.3Moderate
UNIVAC FORTRAN1981.3Low

Pascal/Delphi/Lazarus
DelphiPresent21Very High
Borland Pascal201011"Guru"
Oregon Pascal1981.3Low

Scripting
bash20171Low
DCL200011Very High
TPU1993.5Moderate

Other
UNIVAC COBOL19811Low
JavascriptPresent2Moderate
PHPPresent2High
SiriusPresent25"Guru"
Userware IDML2000.5Moderate


Markup languages:


Name
Most recent
experience

Total Years

Level of expertise
CSSPresent2Moderate
HTMLPresent10High
SGMLPresent20Moderate
XMLPresent1Moderate
Runoff/RNO200015Very high


Operating Systems:


Name
Most recent
experience

Total Years

Level of expertise
Ubuntu LinuxPresent2Moderate
Windows 10Present1Moderate
Windows 7Present2High
Windows XPPresent16Very high
Windows NT20001Low
Windows 95/9820002High
Windows 3.119984High
MSDOSPresent25"Guru"
VMS19965Very high
RSTS/E199014"Guru"
UNIX BSD19871Moderate
Apple DOS1984.5Low
TRSDOS19821Moderate
VS/919811Low
DG AOS19781Low
HP 200019772Low


Platforms/Frameworks/Libraries:


Name
Most recent
experience

Total Years

Level of expertise
Database
MySQL20172Moderate
Rap19821Moderate

UI
Delphi VCL201721Very high
Borland OWL19982Low

Other
ColdFusion1996.5Low
Prestashop2017.5Low


Tools:


Name
Most recent
experience

Total Years

Level of expertise
Documentation
Microsoft Help Compiler20055Moderate
Help N Doc2016.5Moderate
Runoff/RNO20005High

Editors
Aptana20172Moderate
vi20172Low
PSPad20175Moderate
Teco199614Moderate
TPU19964Moderate
EDT19966High

Testing
VAX Performance and Coverage Analyzer19961Moderate
Memproof20055High
Pascal Analyzer20101Moderate

Version control
CMS19962Low
git20162Moderate
PVCS19982Low
StarTeam20057Moderate


Technologies/methodologies:


Name
Most recent
experience

Total Years

Level of expertise
JSON20171Moderate
Localization20175Moderate
Object-oriented programming201721"Guru"
Relational databases201715High
Regression testing201717Very high
Software design/architecture201725Very high
Technical documentation201725Very high
User documentation201720Moderate
Web services20172High
Web site development201612Moderate


Other skills/knowledge:


Name
Most recent
experience

Total Years

Level of expertise
Music
Play piano201635Moderate
Play guitar19951Low
Singing201630Moderate
Music Composition201129Moderate

Natural sciences
Botany201730Moderate
Horticulture20162Low
Astronomy201610Low
Biology201610Low
Biochemistry20152Low
Meteorolgy201615Low
Minerology201620Moderate
Entomology201520Moderate

Other
Ontologies201715High
Game design201720Moderate
Creative writing201640Moderate
Accounting and Double-entry bookkeeping201620Moderate
Biblical studies201735High
Landscaping201742High
American History201710Moderate
Roman History201610Moderate
American coin collecting201630High


Other life experiences

1984: Guest lecture at SPU, Operating Systems class. Discussed the process of system generation and fielded questions from the class.


1999: Guest presentation at Glendale school, Kindergarten class. Discussed rocks, minerals, and elements, showing examples from samples from my personal collection.