Graham -- resumé
C++ Programmer, UNIX Admin (contract)
- C++ Programming
- C++ wrapping ... openssl, gtk, SQL,
- UNIX networking
- Systems integration
- Enterprise management
- Architecture deployment
- Machine migration
- Site maintenance
- Development support
- Training
- Security brainstorming
- Extranet policy
- Disaster recovery and prevention
- Backup automation
Computer Skills
- Degree BSc Comp Sci (Essex)
- Twenty-five years of UNIX, platforms, technologies, apps, sites
- Fifteen of Linux, Redhat, SuSE, Ubuntu, Slackware, SLS (1993), iptables
- Sys-admin, Net-admin, System Builds, Scripting, Development
- PC64, HP/UX-11, HP/UX-10.20, Linux, Solaris-2.8, DEC-True64, DRS/NX, SVR4
- HP-9000 (series-800, 700, NetServer), Sun-E450, E250, DEC-Alpha,
ICL DRS6000, UNISYS-U6000,
Intel-PC's
- GNU-Toolkit, GCC (etc), on several platforms
- UNIX TCP/IP, remote admin, LAN/WAN configuration
- Support, Testing, Peer training
- Installations, Server migrations, Site management
- TCP/IP, LAN/WAN, Internet, Extranet
- Firewall, Packet filter, design, implementation, and testing
- Internet, Extranet, apps and connectivity
- Storage Management, failover switching
- Cisco and ZyXel router configuration
- Security Policy, conformance monitoring, enhancements
- Enterprise management / monitoring
- SGML processing/rendering
- document formatting, eg HTMl TABLES from data
- shell scripting, C++, Java, Tcl/Tk, Python, FMLI, PHP, Perl, SQL, awk
- Remote connections, expect, rsh, ssh, tcl.ftp, $SHELL
- Java Servlets, JDBC, Oracle, Apache, LAMP
- HTTP, disgnostics, SNMP, NIS, DNS, NFS, ARP, SMTP, DHCP, BOOTP
- C++ Python module development
- C++ Tcl module development
- Java servelts in TomCat and jetty
- C++ openSSL wrapper, and CA development
Work Experience - recent first
The airbook project for 22 months, is an SSL relay,
and an application gateway, from a laptop client.
This was a mixture of C++, openssl, system admin,
linux firewalling and some pre-sales support.
I worked with www.kyzo.co.uk,
to enable them to use WIN32 netbooks,
as well as their embedded linux handsets, from their airbook project.
I established a multi-platform build environment, to compile
for WIN32, LGX64, LGX32, and ARM, with all packages independent of the OS,
and distribute the files for testing (make does it all).
I provisioned them with an experimental framework,
for firewalled VM's, so that they can simulate or implement
arrangements and configurations with different layouts.
I designed their CA hierarchy, with strong key phrase handling,
online CA issuing, and text-based control protocol.
The code uses my pre-existing LGPL libs_apps layer,
and adds proprietry application level C++.
I worked for 7 years on several C++ projects, including some
Open Source (LGPL), available from the company web-site.
Some years back, I noticed that hand chiseling TCL code
takes almost as much time, to write, as hand crafted C++ code.
The biggest differences, are the language features,
available libraries and runtime.
Some years later, I still yearn for a really good, syntax directed
editor, (I use vi), but by using incomplete type declaration stubs,
and by not using STL, I find that compile times are much faster,
and the insight debugger, is quite useful.
Part of the code is C++ wrappers to C libraries.
As well as wrapping the technical aspects which are available,
it highlights the parts of the API that I actually use.
I have accumulated a code pool, 'libs_apps', which does a range of
things, with its own features, and wrapper layers on well known
C libraries. Sometimes capturing the basics, sometimes bridging the
gaps. For example, openSSL expects you to put your certificates
into individual files, but I want to use SQL or an EVP encrypted
configuration file, so I put a wrapper around those missing functions.
A previous project is accounting software that produces
PDF reports for companies house, and annual HMRC tax submissions,
and migrating the application to this platform.
I have done a fair amount of work embedding script engines in C++,
including Python, Python, Tcl and JavaScript. I am familiar with GUI API,
including Gtk, Tk, MySQL, and Postgres DBMS.
Running on X11 and even WIN32.
- 7 Years C++ development, Workstation Sys-Admin
- Open Source LGPL code, particularly C++ API's to C libs, including:
- libs_apps: a common code pool for applications and libraries
- accts_js: accounting system for simple uk Ltd
- single encryptable file, multi-table, CSV, JS, Annual Reports in PDF
- tv_rem: InfraRed tv control, /dev/radio controller, sound-mixer, gui
- lib_base: Ref-counted object model, stream/strings, hashtables, time, event driven io, etc
- lib_base2: PDF generation, embedded JavaScript, Gtk wrap
- lib_inet: basic HTTP client/server, more to come: FTP, CDDB, POP3, SSL
- SPIN_py: SGML Parser C++ as a Python Module
- CA_ZERO: A CA where the root key is offline, and each building has its own CA
- sar_plot: time series performance data, for Solaris, HP/UX, ...
- stored compressed in MySQL blobs, also PGSQL and POST (MMAP not SQL)
- /tools/2000: Standard GNU tools built in a controlled prefix (not /usr/local)
- www.tlggroup.com
- 2 months Sys-Admin
- System Stabilisation
- License rationalisation
- Disk Shuffling
- www.186k.co.uk
- 6 months Sys-Admin
- HP-L1000 (like series 800)
- HP/UX-11
- Established the Veritas-NetBackup
- Bedding-in, DR prevention
- Performance Monitoring
- Ladbrokes
- 4 weeks SysAdmin (commuting)
- HP/UX-10.20
- OS build, f-backup scripts
- EMC Fiber connected disk
- Built HP/UX Oracle test boxk
- RankLeisure
- 1 Month Sys-Admin
- HP/UX-10.20
- DEC-Alpha True64
- System patching so that DEC would change the tape drives
- Mecca Membership + Attendance system
- Cable+Wireless
- 3 Months Architecture Building, Racking
- Built Solaris 2.8 Oracle servers
- Java Servlets/Oracle (new platform)
- Web-Registration page
- Technical direction from Ora-Forms to servlets
- Solaris-2.6, E450, E250, Oracle
- From promised to delivered (intensive)
My role was to stage up the platform boxes,
showhorn Oracle onto a fussy HU/UX platform,
shelf stacking the sun racks, and out of nothing,
spec-up and implement a Java servlet to do the
initial subscription, to their box-in-a-shop service.
- SITA - Systems management
- 13 months as primary admin for 16 HPUX boxes
- Supporting maintenance work on production machines
- Fielding support calls
- Built HP/UX server with range of services
- Built 5 SPARC Ultras for system monitoring
- Sytem Integration of room of servers, backup, monitoring, network
- Monitoring a dozen HP/UX systems for configuration
- Looking at performance statistics
- Installed a tape robot jukebox for shared access
- Tcl parser to read backup logs
- Tcl/Tk GUI to monitor rooms backups and drive tape robot
- Centralised OmniBack scheduling and reporting (HP Openview Data Protector)
- DG Fiber connected disk
- Cross Platform Open Source Toolkit
- Tcl/Tk GUI screens for system management
- C modules for Remote Execution (Event driven IO)
- ISP firewall configuration
- Y2K preparations, all systems upgraded
- Sybase scripts for hotbackup, shutdown, tests, ...
- Details ... (click)
- 6 Months (4 week rolling), Technical Manager
- Electronic Publication / Distribution environment (online+CD)
- Extranet Building - visiting clients and discussing with them
how to build an extranet link to Pendragon,
whilst conforming to (clarifying) their security policy.
- ISDN BRI2, Cisco1003, Zyxel routers
- Cisco-1003 router configuration, TCP connection specification
- Cisco Packet filter design and implementation (TCP)
- Zyxel router configuration, Network Address Translation,
- Zyxel 2-way simultaneous SOHO connection (Intranet, Extranet)
- Win95 disk shares to a remote Solaris 2.5
- SMB link from LAN/PC to UNIX over ISDN
- 300 MB ftp mirror of application source to/from local site
- Proposed and implemented CDROM backup system
- Auto creation of CD images, and cutting to media
- ftp gateway for updates to customer over internet
- http prototype (to evaluate business need)
- Details ... (click)
Eigen Solutions Ltd
- 4 Months, Consultancy (3+extn)
- Installing Command Post (Boole&Babbage Europe) for
Perot and East Midland Electric to monitor and manage
their dozen HP boxes and mainframe
- Installing four HP/UX boxes from shrink wrap to NFS
- System build HP/UX 10.20 with disk mirroring and striping
- System Integration of Command Post enterprise management
- A few simple Sybase and Remedy tasks
- Built a triple boot W95/NT/Linux portable Tosh for the MD
- Details ... (click)
Citi-Bank (Strand)
- 6 Weeks for Eddie George Ltd
- Scripting file transfers
- Looking at 150 key macros
UNISYS / MOD / UK Navy
- 12 Months, Testing, Scripting
- Maintaining their test network and hardware
- Building machines for delivery
- Tested network apps with simulated workload
- Designed/implemented/installed scripts for national password propagation
- On-site and remote server maintenance
- Unisys U6000, Spider routers, UTP wiring, TCP apps
Camden Borough Council
- 4 Months, SVR4 and LAN administrator
- Maintaining a 40 PC network, (LAN-MAN-II)
- Daily script that reports their DRS6000 configuration
- Audited their site to their own guidelines document
- Doubled their Excell spreadsheet speed, by adding swap
ICL Zürich
- 3 + 6 Months, Internal Systems Implementor
- Replaced their (live) 100 user main Office server
- Re-wrote their national X25 network configuration
- Migrated batches of users overnight (2 then 20 then 80)
- Maintained their EMAIL directory / phone book
- Installed a few satellite servers and gateways
- Migrated their internal documents, converting formats
- Supporting their south region in-car UNIX engineer
- Assisting their in-house support teams (X-charge from IS)
Zürich is the ICL Swiss head-office. They commissioned
me to migrate them from their old Office server, to their new DRS6000,
without disruption (the MD being the main email user), They were so happy
with this that they called me back, to switch them over to their new leased
line to the UK and to re-configure their national X25 network (to match
the new gateways I was installing).
ICL Helsinki
- 12 Month, System Administrator
- Upgrading their DRS400 hardware
- Homogenised their 6 host network (2 kept 4 sold)
- Itemised and purchased their new system.
- Installed their DRS6000 office server and X400 EMAIL gateway
- Migrated them from Uniplex to OfficePower OP650
- Wrote a simple online document converter (originals retained)
- Configured all their apps to work with all their terminals
- Wrote an inline 8859 to iso-646 charset TTY channel converter
- Left them with one standard, working terminal, for all apps
- Maintained their 100 PC TCP/IP network
- Bridged application printouts from lp to X400 EMAIL via popup
- FMLI menu's to reprint jammed invoice 1375..1377 of 2000
- Advised about 7-bit and 8-bit charset terminals
- much much more ...
ICL Bracknell
- 33 Month, Systems Integration Technician
- Testing SVR4 UNIX BASE for release
- Testing SVR4 UNIX APPS for release
- SVR2 SVR3 SVR4 on 286 386 (first 386's outside US) 68020 SPARC
- System Testing and System Integration
- Testing hardware upgrade from DRS400 to SVR3 DRS400e
- Quality trained