Brian Stafford

Derry/Londonderry, N.Ireland · +44 7875 306 310 · brian.stafford60@gmail.com

I am an experienced software and hardware engineer, developing for server and desktop environments and embedded system design. As well as commercial product and software development I am an active Opensource developer and contributor.

I am highly motivated whether working solo or as part of a team and I strive to create reliable, practical systems.

My resumé may be downloaded in PDF or EPUB formats.


Skills

Programming Languages & Tools
  • C, C++
  • Lua
  • Python
  • XML, HTML, XSL-T and related technologies
  • SQL including Postgres, MySQL and Sqlite3
  • Json, YaML
Software Development
  • Application development in C, C++, Python, Lua, SQL.
  • PIC AVR embedded development in C, Assembler.
  • ARM embedded development in C, Lua, SQL.
  • GObject frameworks including GTK+, GStreamer and GEGL
  • Remote UI design using HTTP, HTML and web technologies.
  • VoIP and ISDN audio / video integration
  • Embedding and extending Python and Lua using respective C APIs.
  • Postgres, MySQL, Sqlite3 SQL design and integration.
  • XML, XSL-T, JSON, YaML integration.
  • Safety-critical environments, e.g. CNC machine tools.
Hardware Development
  • Linear and digital electronics design.
  • Schematic design, PCB drafting and layout.
  • Embedded Systems Design based on PIC, AVR and ARM microcontrollers.
  • Port Linux to new hardware, device driver development and utilities.
Standards
  • Standards-based application development in IETF working groups.

  • Cited as a contributor to the development of RFC 2532 extended facsimile standard

  • Participant in the development of RFC 2821 and RFC 2822 email standards.
  • Working knowledge of H.264 (Advanced Video Codec).
Security Programming
  • Strong cryptography for authentication, non-repudiation and attack resistance.
  • Secure server/client application design including penetration-resistant architectures.
  • Embedded systems including secure boot and memory scrambling architectures

Open Source

libESMTP

I am the author and maintainer of libESMTP, a secure, high performance email client API included as standard in Linux distributions and in the ports section of OpenBSD and FreeBSD.

PocPlot

PocPlot is a simple graph plotting library for GTK+3 written as an alternative to the now unmaintained GtkExtra package.

GEGL

I am a contributor to the GEGL high bit-depth General Graphics Library project used in many image processing programs including the GIMP. As well as bug-fixes, I wrote GEGL’s non-Exif file metadata subsystem.

GitHub

Iarthair is a collection of open source code and tools I have written over time to ease various parts of the development process, available on GitHub.

Other

Code contributor to open-source projects including


Experience

Senior Software Engineer

Development of GTK3+. GEGL based colour and black and white negative film scanning software simulating darkroom printing process and workflow.

This product is aimed at photography archives and museums where high throughput and conversion accuracy is important as well as the occasional user and offers a frustration-free workflow.

Oct 2018 – present

Clearpool.io Carrickfergus, Northern Ireland.

Senior Software Engineer

Development of C++ based system trading on the S&P 500, using Google protobufs for interaction with the broker data feed. Application structured as a pipeline for analysis and decision making based on live feed, capable of taking both short and long positions.

Oct 2017 - Oct 2018

American Dynamics Belfast, Northern Ireland

Senior Software Engineer

Development of automated deployment system for testing AD video recorders. This system was written in Python and coordinated PxE, TFTP, DHCP and HTTP to interface to Jenkins and deploy and configure nightly builds.

Further development of AD video recorders including development of GStreamer elements processing H.264 video streams.

April 2016 – Oct 2017

Latens Systems Belfast, Northern Ireland

Senior Software Engineer,

Design and implementation of Latens Titanium Security Server managing secret keys for programming into SoC devices embedded in set-top boxes for digital television and associated services such as DRM and entitlements management. Use of strong cryptography for authentication, non-repudiation, attack resistance and data obfuscation.

In-house consultancy for security related topics such as the use and deployment of strong cryptography for various functions such as DRM, entitlements management, penetration resistance etc

April 2013 – March 2016

Lattice Voice Technology Ltd York, England

Technical Director

Development of system to automatically identify language and triage foreign-language calls to 999/112 emergency services.

Developed desktop system to facilitate face-to-face contact with non-English speakers for use by public facing organizations such as Police, Local Authorities or Energy Companies.

Use of C, Lua, XML, cryptography, database and VoIP technologies to provide secure, coordinated web and telephony services to police and local authorities.

May 2007 – July 2012

Computime Systems Ltd Leeds, England

External Consultant

I helped troubleshoot and further develop Computime’s time and attendance systems systems both in regard of electronics and firmware design. The T&A clocks were based originally on Z80 and NEC V40 chipsets were networked using RS-485 over up cable spans up to 1km cable and with a host computer using RS-232. I developed a real-time executive which implemented cooperative multitasking in C and Z80 assembler. The high level functionality was developed in C by Computime’s development team and I integrated the code into the host hardware.


As the technology in the clocks became obsolete with a consequent rise in manufacturing costs, Computime re-engaged me to develop the successor. The replacement clocks had a number of requirements over the original including the ability to communicate using TCP/IP networking and to significantly reduce manufacturing costs.

As before I developed the hardware and low-level software and Computime’s team developed application level code. The new clocks were based on Atmel’s AT91RM9200 ARM processor and ran Linux. At the time of development Linux was relatively recent on the ARM platform so I developed both utilities and Linux device drivers for the platform. I contributed patches to the then-current Linux Ethernet driver and added code to support the Ethernet PHY chips used in Computime’s design.

2003 – 2012, 1993 - 1997

Officelogic International Ltd Skipton-in-Craven, England

Senior Development Engineer

OfficeLogic Internalional Ltd developed software distributed through Internet Service Providers to simplify the process of installing and using internet software suites on Windows PC based systems. Notably OfficeLogic developed and supplied BT’s Expert Internet product.

I was responsible for the design and implementation of standards-based Internet Fax software suite including fax to email “on ramps” and “off ramps”. As part of this development process I was a participant in the IETF standards development process in the FAX and VPIM working groups both on the IETF mailing lists and attending IETF meetings.

In addition I was involved in the design and implementation of an HTTP/1.1 content filtering proxy for BT Expert Internet. This was an early implementation of detection and blocking of undesirable content as found on contemporary web sites.

1997 – 2003

Other Experience, Self-Employment

Whilst self-employed, I developed a number of small embedded devices based on Motorola 6809 and PIC microcontrollers, including beer pump dispensers, vehicle immobilisers, power amplifiers for in-car entertainment, automatic hand dryers and central heating controllers where build costs are strictly limited. I also guided clients through technical processes such as EMC testing for CE and PACT approvals.

Consultancy for ultrasonic equipment tagging and tracking for use in sensitive and hazardous environments.

Development of system to automatically monitor coin hoppers on pub games machines and reconcile reported takings communicating on-line in real time directly to companies leasing machines.

I developed higher end ARM/Linux systems for Time & Attendance systems, monitoring and verifying coin hoppers on cash based pub games machines and tyre pressure monitoring.

Early Experience

Organisation Location Position Dates
Sequelsoft Ltd Bradford, England Unix Systems Manager 1991 – 1992
Pertmaster International Ltd Bradford, England Unix Systems Manager 1990 – 1991
Cube Electronic Systems Ltd Bradford, England Senior Engineer 1987 – 1989
Reliance Gear Company Ltd Huddersfield, England Senior Electronics Engineer 1987 – 1987
Butler Newall Machine Tools Ltd Keighley, England Electronics Engineer 1984 – 1986
Slingsby Engineering Ltd Kirbymoorside, England Electronics Engineer 1982 – 1984

Education

University of Leeds

Batchelor of Science (Hons) 1982
Electronic and Electrical Engineering
1979 - 1982

Foyle College, Derry/Londonderry

O Levels, A Level (Maths, Further Maths, Physics)
1971 - 1978

Interests

Music

  • All-Ireland Uilleann Pipes Champion 1978 / 1979.
  • Member of traditional Irish group Quilty 1979 – 1985.
  • Member of traditional Welsh group Yr Hwntws 1984 – 1992.
  • Member of English dance bands JCB 1987 – 2000, KCB 2000 – 2005.
  • Cross-community workshop participant for the Peace III ‘Traditions of Ulster’ project, 2013.
  • Uilleann Pipes soloist for the Geneva International Christian Choir and Orchestra, 2013.
  • Uilleann Pipes soloist with Corul Deo Gloria, Romania, 2014.
  • Researched and recorded ‘Caves of Cong’ CD with Josie Nugent, music from 19th century and contemporary collections, 2014
  • Performance, tutoring and workshops for Na Píobairí Uilleann, 2013 – present.
  • Performer and uilleann pipes/adult mixed instruments tutor for Scoil Éigse (CCÉ summer school), 2013 – 2018.
  • Flute and uilleann pipes adjudicator for Co. Kerry regional Fleadh Cheoil, 2013.
  • Performer and tin-whistle tutor for BelfastTrad 2014.
  • Radio and television interviews and performance on BBC Newsnight, RTÉ Television and RTÉ Raidió na Gaeltachta, 2014 – present.
  • All Set Cross Cultural board member 2015 - 2018.
  • Performer, sound recordist and editor for Josie Nugent’s 2016 CD ‘Modal Citizen’
  • Organiser of Co Derry International Uilleann Piping Day event.

Photography

  • Landscape and events photography in digital and 35mm and medium film formats.
  • Cover artwork photography for Josie Nugent’s 2016 CD ‘Modal Citizen’
  • Event photographer for Apple Orchestra Parade in Derry/Londonderry, May 2015.
  • Event photographer for Musicians Without Borders performance and parade, June 2015.
  • Photography for musical improvisation, technology and and dance performance of Gabriel Rosenstock’s Sasquatch, 2016.
  • Developing colour film using the C41 process.
  • Normal and push processing of black and white film .
  • Darkroom printing.
  • Scan and conversion for colour and black & white film photography.
  • Exhibitor in Belfast Exposed Gallery.

About my Resumé

This resumé is built using a template from Start Bootstrap which was modified to create a Halcyon template. The site sections and configuration and some of the content are specified in a YaML file, with the remainder being provided in files written using the Commonmark profile of Markdown.

Halcyon is a simple Python wrapper, inspired by Sphinx and Jekyll, around GitHub Flavored Markdown which is interfaced to Python using the Python C API and halcyon-cmark, is configured using PyYAML and rendered into HTML templates using Jinja2.


Copyright © 2020 Brian Stafford