Résumé of Paul Parks
Location:
Singapore
Mobile, WhatsApp: +65 8436 3982
Email: [email protected]
Web Site: https://parkscomputing.com/
LinkedIn Profile: https://www.linkedin.com/in/paulmooreparks/
GitHub Repo: https://github.com/paulmooreparks/
This résumé is also available in Microsoft Word, PDF, and
plain HTML formats.
What Makes Me Unique
- Over 35 years of professional software experience covering a broad range of languages, platforms,
libraries, technologies, and application domains.
- Experience leading multi-cultural teams, working across countries, cultures, and time zones.
- An eye for continuous improvement of technologies and processes.
- A talent for explaining technical matters to a non-technical audience.
- A lifelong learner who is continuously exploring and experimenting with new technologies, new
approaches, and new experiences.
Core Skills
Leadership: Mentorship and management of diverse teams.
Communication: Excellent writing skills, which I constantly practice in my professional
life as well as on my personal blog.
Global Perspective: Experience working with, and communicating successfully with,
colleagues and customers across various countries, cultures, and time zones.
Customer Interaction: Engagement with clients for tailored services and satisfaction during
solution delivery and support. Skilled at translating complex technical matters for non-technical audiences
(and vice-versa).
Software Delivery: Delivery of mission-critical software to substantial clients; adherence
to quality and schedule.
Full Life-Cycle Management: Proficiency in software project management from inception to
support, with classic project management, Kanban/Lean, Scrum.
Multi-faceted Development: Various platforms (Windows, Linux, Unix), application domains
(desktop, server, command-line, web) and languages (C#, C++, C, JavaScript, TypeScript, etc.).
Technical Skills
Software Domains: Web sites and applications, Web APIs (REST, SOAP), Graphical desktop
applications (GUI), Self-service kiosks, Point-of-sale (POS) systems, Server applications and services,
Command-line utilities (CLI), Native libraries and APIs
Development Platforms: Windows (desktop/workstation from 3.0 through Windows 11), Windows
Server (2003, 2008), Windows Embedded (POSReady 2009, Windows CE 6.0), Unix (System V Release 4, Sun), Linux
(various distributions from early Slackware to current day), DOS (IBM, MS)
Programming Languages: C++ (through C++20), C (ANSI C ‘89), C# (1 through 11), Assembly
(6502, 8086, x86, custom), JavaScript, TypeScript, shell (PowerShell, csh, ksh, bash, DOS), Java, LISP,
COBOL, Software AG Natural, Basic (Quick Basic, Microsoft Professional Basic, Visual Basic, VB.NET, and my
own variant ClifferBasic), Bytecode interpreters
Frameworks & Technologies: .NET 8, .NET 7, Angular, Microsoft Azure, Docker, Entity
Framework, Microsoft SQL Server, .NET Razor Pages, ASP.NET, XAML, Windows Presentation Foundation (WPF),
.NET Windows Forms (WinForms), .NET/Windows Interop, .NET Framework (1 through 4.7), HTML (through HTML5),
HTTP, XML, CSS, ASP, WordPress, REST, SOAP, XSLT, WAP, XML-RPC, Java Servlet Pages (JSP), ESXi, VMWare
Workstation, Active Template Library (ATL), Network Sockets, Common Object Model (COM), MFC, Windows API
(Windows 3.0 through Win32)
Citizenship and Visa Status
- United States citizen by birth
- Singapore Permanent Resident visa status since March 2022
- Currently reside in Singapore (since October 2017)
Professional Experience
Senior Consultant
Singapore
December 2025 to present
- Analyzing and designing business processes for leading retailers in an omnichannel context, with a focus
on POS, mobile touchpoints, store operations and merchandise management
- Advising customers on the introduction and optimization of GK standard software, including conducting
functional workshops and solution-design sessions
- Configuring and parameterizing software solutions in accordance with business requirements and best
practices
- Gathering, clarifying, and documenting business and functional requirements in close coordination with
the customer
- Supporting the customer in the preparation and execution of testing and go-live activities, including
quality
assurance, user acceptance-testing support, and key user enablement
- Serving as the primary point of contact for all functional topics, ensuring smooth communication between
customer stakeholders, project management, and technical teams
Corporate Director
Singapore
December 2022 to present
Freelance Software Developer
Singapore
June 2023 to November 2025
- Custom software development and consulting. Current project is as a senior software developer for Agile
Bridge, providing support and development services for Korean and Japanese users of the Abacus product,
which is a web-based micro-service calculation engine used for financial computations in the automotive
industry. Technical stack is .NET and C# back end with Entity Framework and Razor Pages, with an Angular
front end.
Senior Manager
Diebold-Nixdorf
Singapore
September 2021 to August 2022
- Led a team of retail business analysts based in various cities across the Asia-Pacific region. The
business analysts are engaged with Diebold-Nixdorf customers across the APAC region in multiple retail
projects for point-of-sale, self-service checkout, and loyalty solutions in the grocery, fuel &
convenience, health & beauty, and fashion retail sectors.
- Led a team of software engineers based in Singapore developing and maintaining Diebold-Nixdorf's
TP.Linux retail point-of-sale application.
- Active participant in the APAC Retail Professional Services management team, reporting to the director
of APAC Retail Professional Services.
Technical Consulting Senior Manager
NCR Corporation
Singapore
November 2017 to July 2021
- Consulted on multiple retail projects across the Southeast Asia sub-region from pre-sales through
delivery.
- Liaised between NCR’s software engineering teams and in-region professional-services teams working
directly with the customer to ensure that customer solutions were delivered accurately and in a timely
manner.
- Worked directly with customers in the APAC region to identify and resolve issues.
Senior Software Engineer
NCR Corporation
Atlanta, Georgia, USA
March 2016 to October 2017
-
Led local and offshore development teams in the design, development, testing, and delivery of
self-checkout and self-service
kiosk software for the retail and postal industries, including NCR’s largest retail account and for a
national post office service.
- Worked directly with customers to gather, understand, and clarify requirements.
- Created estimates and project plans for software development projects.
- Provided mentoring and consultation to development teams.
Software Technical Lead
SYSGENS, Inc.
Atlanta, Georgia, USA
January 2003 to December 2015
- Led local and offshore development teams in the development of point-of-sale, self-checkout, and
self-service kiosk software.
- Worked with NCR Professional Services to gather, understand, and clarify customer requirements.
- Created estimates and project plans for software development projects.
- Architected and designed solutions to meet requirements for NCR customers.
- Designed, developed, maintained, and provided training for key software components and APIs.
-
Led integration project for a self-service kiosk for the British post office, Post Office Ltd. Developed
an innovative
integration of NCR's self-service checkout application with a new, back-end integration to a SOAP web
service rather
than a point-of-sale system. The kiosk helped Post Office meet savings targets, and it provided a new
platform for self-service
offerings not found in other integrations of NCR''s self-service checkout.
-
Led design and development of a new user interface subsystem, known as Apex, for NCR Advanced Checkout
Solution (ACS)
to extend my previous work with the UI. The new UI added support for touch devices, hybrid touch/DynaKey
devices, and full
keyboard devices, while also providing multi-language support.
-
Designed, developed, and maintained the integration subsystem between NCR's self-service checkout and
ACS, known as ACSIO.
-
Designed, developed, and maintained a high-performance, high-reliability, configurable logging and
tracing subsystem for
use in ACS, ACSIO, Apex, and self-service checkout. Developed native language libraries for integrating
the subsystem into
C, C++, .NET, and JavaScript applications.
-
Architected a new integration subsystem between NCR's self-service checkout and ACSIR, using Apex,
allowing
integration logic to be developed in JavaScript rather than in C++.
Application Developer
Vorsite Corporation
Seattle, Washington, USA
March 2002 to December 2002
- Developed intranet web applications and native utilities for Microsoft, a Vorsite contract customer and
partner.
- Developed client-side browser controls targeting HTML 4 and DOM 2 browsers, for both ASP and ASP.NET
applications.
Senior Design Engineer
Intava, Inc.
Bellevue, Washington, USA
January 2001 to November 2001
- Designed and implemented server products for the wireless Internet industry.
-
Implemented XML-RPC specification in Java to support integration of Java server code with multiple web
servers via an
RPC interface.
President
Parks Computing Services, Inc.
Atlanta, Georgia, USA
January 2000 to December 2000
-
Created web host pages for Java applet-based system,
Witness Systems'
eQuality Release 6.
Developed a Java servlet system to separate complex JavaScript validation logic from presentation
markup, as well as to ease
cross-browser web page development, via server-side processing of XHTML web pages containing custom
design tags residing in
a separate XML namespace.
-
Created Java servlet to generate report data selection forms for browser-based application, using XSL
stylesheets to
format output of XML data. Output of the report form was sent to Actuate reporting engine.
Software Engineer
SYSGENS, Inc.
Atlanta, Georgia, USA
February 1994 to December 1999
- Developed software for NCR Advanced Checkout Solution (ACS), a point-of-sale application.
Developer I
PC DOCS, Inc.
Tallahassee, Florida, USA
February 1993 to January 1994
- Performed analysis and implementation of software designs for PC DOCS version 4.2 and 4.3.
- Served as technical liaison to customer-support department and provided on-site technical support.
Computer Programmer Analyst
Executive Office of the Governor
Tallahassee, Florida, USA
December 1989 to January 1993
-
Performed programming and analysis duties for Legislative Appropriations System/Planning and Budgeting
Subsystem (LAS/PBS),
wrote applications in MVS/ESA environment in Natural 2.1 with ADABAS database, maintained existing COBOL
applications, and wrote
and maintained related JCL.
-
Worked in the Personal Computer Support unit developing and maintaining PC-to-mainframe data transfer
utilities in Microsoft
Professional BASIC to create Lotus spreadsheets from mainframe-resident state budget data.
- Developed a character-based, windowed user interface for use in transfer utilities.
- Wrote related Windows applications with Microsoft Visual Basic 1.0 and Borland C 3.0.
-
Maintained office PCs, and installed and evaluated PC software. Performed limited administration duties
on a 25-node
Microsoft LAN Manager network.
A Selection of Personal Projects
XferLang
August 2024 to present
XferLang is an experimental data-serialization language that is designed to be a more flexible and more
strictly
typed alternative to JSON.
The GitHub repository contains a basic specification for the language along with a parser, an object model,
and a serialization/deserialization utility.
Clic
July 2024 to August 2024
Clic began as a sample program to demonstrate and test the REPL (Read-Eval-Print Loop) capabilities of the
Cliffer CLI library.
It is now a separate project that implements a stack-based calculator. The application stores the stack and
variables across
multiple invocations, making it suitable for scripting as well as interactive usage. Clic is implemented in
.NET 8.0 and runs
on Windows, Linux, and macOS.
ClifferBasic
July 2024 to present
Like Clic, ClifferBasic also began as a sample program for Cliffer. It is now a separate project that
implements a BASIC programming
environment as a command-line application, in the style of classic home computers like the Commodore 64 and
the Apple ][. It is
capable of editing, storing, loading, and executing BASIC programs, and it can execute BASIC commands
interactively. ClifferBasic is
implemented in .NET 8.0 and runs on Windows, Linux, and macOS.
Cliffer CLI Library
January 2024 to present
Cliffer is a .NET library built on top of Microsoft's System.CommandLine library that makes command-line
interface (CLI) applications much easier
to write. It uses attributed programming so that developers can add attribute declarations to their code,
and the Cliffer library takes care of
all the boilerplate necessary for creating complete, professional-quality CLI applications.
Parkscomputing.com
November 2022 to present
My personal/freelancing web site was previously hosted on WordPress, but this was not sufficient for my
needs and interests.
I wanted to be able to edit raw HTML and try various web technologies on individual pages, which was
difficult to do with WordPress.
I wrote my own web site engine with ASP.NET Razor Pages on .NET 7. The site is hosted on Azure Web Services
as a containerized application
(Docker). I am currently adding the ability for readers to leave comments on pages. This feature is
implemented as a RESTful web service
hosted on Azure (containerized), with the comments stored in an Azure SQL Server database. I am extending
the site engine to retrieve and
display comments as well as accept new comments, and I am making a separate application to notify me of new
comments so that I can approve
or reject them.
Maize Virtual CPU
March 2020 to present
This project implements a 64-bit virtual CPU called "Maize". See the file README.md
for more details on the Maize CPU assembly language and the simple operating system that runs on it.
The near-term goal is to implement a set of devices to bridge from the virtual CPU environment to the host
machine,
create a "BIOS" layer above the virtual devices, implement a simple OS and a subset of Unix/Linux system
calls
(interrupt $80), and finally port a C/C++ compiler (likely Clang or GCC) that will generate Maize machine
code.
Set-Associative Cache in C#
July 2020 to December 2022
A C# implementation of a set-associative cache with multiple cache-replacement policies, such as
least-frequently used,
least-recently used, or most-recently used.
Conway's Game of Life in JavaScript
November 2015
An example of how to write high-performance JavaScript code using the HTML canvas element to
implement Conway's Game of Life, which is demonstration of cellular automata simulating living organisms.
Dragsens, a Console-based Drag Sensitivity Utility
November 2015
A simple utility that allows users to change the number of pixels the mouse has to travel before a drag
operation is initiated.
Used by private users and by systems administrators to prevent accidental drag-and-drop operations.
EAN-13 Barcode Generator in JavaScript
2015
A web page that accepts HTTP GET parameters on the URL line and outputs an EAN-13 barcode generated via
JavaScript and HTML DOM.
Pbrain Language Interpreter and Compiler
September 2004
The pbrain programming language is an extension I made to the Brainf**k
programming language that adds the ability to define and call procedures. The site linked above has an
interpreter
implemented in C++ and a .NET compiler implemented in C#.