Brian Stafford

Derry/Londonderry Northern Ireland – postal address available on request

Phone:  +44 7875 306 310 • Email: brian.stafford60@gmail.com

Key Skills

Programming Languages

C, C++, Python, Lua, Java

XML, HTML, XSL-T and similar technologies incl. Json, YaML

SQL including Postgres, MySQL and Sqlite3

Software Development

Application, library and embedded development in C, C++, Python, Lua, SQL.

GObject derived frameworks including GTK+, GStreamer and  GEGL.

Embedding and extending Python and Lua using respective C APIs.

Postgres and MySQL, Sqlite3 SQL design and integration.

XML,  XSL-T, JSON / YaML application integration .

Safety-critical software for CNC machine tools.

Able to rapidly assimilate new programming languages and software paradigms.

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 including device driver development and associated utilities.

Standards

Standards-based application development; contributor in IETF working groups (https://www.ietf.org/).

Cited as a contributor to the development of RFC 2532 extended facsimile standard (https://tools.ietf.org/html/rfc2532).

Participant in the development of RFC 2821 and RFC 2822 email standards.

Working knowledge of H.264 (Advanced Video Codec).

Security Programming

Use of strong cryptography, digital signatures and related protocols to prevent forgery and eavesdropping, to provide authentication, non-repudiation and resistance to attack.

Secure server/client application design including penetration-resistant architectures for network facing applications.

Linux based 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
(https://libesmtp.github.io/).

PocPlot

PocPlot is a simple graph plotting library for GTK+3 written as an alternative to the now unmaintained GtkExtra package. (https://github.com/iarthair/pocplot)

GEGL

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

GitHub

Iarthair (https://iarthair.github.io) 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

I am a contributor to open-source projects including

 Balsa mail client (https://pawsa.fedorapeople.org/balsa/)

uClibc C runtime library for embedded systems (http://www.uclibc.org/)

Professional Experience

Oct 2018 – present

Development of GTK3+. GEGL based negative film scanning software simulating darkroom printing process and workflow.  This dramatically increases throughput and accuracy when scanning a large archive of colour or black-and-white film.

Clearpool.io, Carrickfergus, Northern Ireland.

Senior Software Engineer, Oct 2017 - Oct 2018

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.

American Dynamics, Belfast, Northern Ireland

Senior Software Engineer, April 2016 – Oct 2017

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, reboot and configure nightly builds of the recorders.

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

Latens Systems, Belfast, Northern Ireland

Senior Software Engineer, April 2013 – March 2016

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.

Lattice Voice Technology Ltd, York, England

Technical Director, May 2007 – July 2012

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

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.

Self-Employment, York, England, Derry/Londonderry & Belfast, Northern Ireland

April 2003 – April 2014

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.

Computime Systems Ltd Leeds, England

External Consultant, 2003 – 2012, 1993 – 1997

Initially contracted to troubleshoot and further develop Computime’s time and attendance systems systems electronics and firmware design. The T&A clocks were based originally on Z80 and NEC V40 chipsets. Clocks were networked using RS-485 over up cable spans up to 1km cable, and a master clock connected to 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 technology became obsolete with a consequent rise in manufacturing costs, Computime re-engaged me to develop the successor. In addition to existing requirements there was an emergent need for ethernet networking and to significantly reduce manufacturing costs. This was achieved by migrating to ARM based processors and running  Linux. Since Linux was relatively recent on ARM 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.

Officelogic International Ltd, Skipton-in-Craven, England

Senior Development Engineer, July 1997 – April 2003

Design and implementation of standards-based Internet Fax software suite.

Design and implementation of HTTP/1.1 content filtering proxy for  BT Expert Internet.

Participation in IETF standards development process, FAX and VPIM working groups.

Self-Employment, Skipton-in-Craven, England

August 1992 – July 1997

Implemented dedicated function devices such as vehicle immobilisers, automatic hand dryers and central heating controllers where build costs are strictly limited.

Guided product development through approval processes including EMC and PACT testing.
Power amplifiers for in-car entertainment providing 50+50W RMS output with mono bridge mode and

switch mode regulated power supply.

Early Experience

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

B.Sc. (Hons) 1982, Electrical and Electronics Engineering, University of Leeds, England

Foyle College, Londonderry, Northern Ireland

References

References available on request.

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 (http://gicco.ch/).

Uilleann Pipes soloist with Corul Deo Gloria, Romania, 2014 (http://www.deogloriamusic.ro/)

Researched and recorded 'Caves of Cong' CD with Josie Nugent, based on  music from 19th century and contemporary collections, 2014

Performance, tutoring and workshops for Na Píobairí Uilleann, 2013 – present.  (http://pipers.ie)

Performer and uilleann pipes/adult mixed instruments tutor for Scoil Éigse (CCÉ summer school), 2013 – present, (http://www.fleadhcheoil.ie/whats-on/scoil-eigse/)

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 - present.

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.

Photographer for a musical improvisation, technology and and dance based performance of Gabriel Rosenstock's book Sasquatch, 2016.

Developing colour film using the C41 process.

Normal and push processing of black and white film .

Darkroom printing.

Scanning colour and black & white film using custom software to simulate the photographic enlarging and printing process.

Exhibitor in Belfast Exposed Gallery.