Skip to content

jg-cqc/CV

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 

Repository files navigation

Jonathan Gilmore

Software Developer

Release 2021.1

Available online at here.

Code Examples - Expertise - Achievements - History - Earlier Positions - Training - Qualifications - Personal Details

eMail: [email protected]
About Me: https://about.me/jonathangilmore/

A very experienced IT Professional with a wealth of knowledge in all aspects of software development including security related systems and communications, wired and wireless networks, embedded systems, blockchain/DLT systems, smart card technologies, banking and financial systems.
An adaptable individual offering significant technical expertise, strong troubleshooting skills and a proven ability to implement innovative solutions and optimise resources - seeking either a technical or team lead software engineering/development role in the IT, Telecommunications or Finance sectors. I am also open to opportunities in training, as this is a particular passion and talent of mine, and/or customer-facing roles.
I am proud to have consistently managed successful assignments and projects, attributable to thorough and accurate I.S. disciplines and business knowledge supported by an excellent technical background and very good inter-personal and communication skills.

Code Examples

Project Name Description Technologies Testing
filter C/textfile Filter Utility C++ .
Simple C Round Fifo Simple C Round Fifo C .
Expression Evaluator Expression Evaluator C++ .
Colour Ramp Colour Ramp C++ .
  • Technical expertise, Project Management, IT Consultancy, Team and technical leadership and mentoring, Agile, Scrum, primarily in the Telecoms and Retail Banking/Financial sectors. Extensive experience in all aspects of the full software lifecycle, including Agile, scrum, git and use of Open Source in commercial/proprietary systems.
  • Small Business Management, Problem solving, Motivation, Mentoring and guidance, Support and training, Client relationship management, international 3rd party suppliers and consultants.
  • Methodologies: Agile, Scrum, Scrum Master, Kanban, Waterfall.
  • Platforms: Embedded systems, Mobile telephony, Middleware, PC Windows/Console/Linux, and client/server environments.
  • Architectures: Embedded, Object-Oriented (OO), event driven, state machine, multi-process and multi-threaded. CQRS/Event Sourcing model, cloud-based micro-services.
  • Security: Secure Communications (SSL, TLS, and HTTPS), Cryptographic/encryption Systems incl. NIST, CAVS/CAVP and aspects of FIPS compliance, data security, stream ciphers, web vulnerabilities and hardening. DLT/blockchain with Ethereum/Web3 and Solidity smart contracts. Some exposure to Microsoft PlayReady/CDM.
  • Communications and Networking: TCP/IP (and related protocols), HTTP, HTTPS, HTML, GSM/GPRS, Mobile and Multimedia messaging, email and web technologies, MPEG/DVB transport streams, Serial/Async/RS232/Dialup modems etc.
  • Languages: C (33yrs, of which 17yrs in embedded), C++ (5yrs, of which 2yrs in embedded), Python, VB, Pascal, Scripting (incl. bash, Perl, python, make/awk/sed/regex, DOS/cmd, Powershell), JavaScript, Typescript, and some Java, C# and Solidity.
  • Development Frameworks: Win32 SDK, MFC, Apoxi and some dotNet and dotNet Core.
  • Toolchains: GNU/gcc, Visual Studio/MSVC, TI, Infineon, various Windows and Linux scripting tools, JavaScript, Typescript. Some exposure to C#, but not (yet) an expert.
  • Configuration management, Defect Management and workflow: git, github (enterprise), TeamCity, YouTrack, ClearCase UCM, ClearQuest, ReviewBoard, Gerrit, Artifactory, Coverity, Rally, Jira, CDETS, Bugzilla, TestTrack, makefiles, CVS, Wiki, BlackDuck (Protex).
  • Recognition for the successful Go-Live of the Calastone DMI blockchain platform in May 2019.
  • Recognition and award for valuable contribution towards successful launch of the BskyB Adsmart and Sky-Q STB projects.
  • Successful audit of 3rd party and open source software components used in the middleware of both Darwin (legacy) and Ethan (Sky-Q) STB code repository.
  • Recognition for contribution towards FIPS/NIST CAVS certification of Motorola's family of point-to-point wireless routers, opening up new markets in the defence and public safety spaces.
  • Implementation of email & messaging apps in high-end mobile handsets for global market (Sharp).
  • Design, development and marketing of a range of Vehicle/Asset tracking devices using GSM/GPRS and GPS technology.
  • Development and coordination the software aspects of a highly successful military-grade crypto-mobile phone used, at the time, by a variety of presidential offices and security agencies worldwide.
  • Co-founded, managed and grew a software company to a team of >20 specialist staff serving the retail banking sector and achieving certification as a Lotus Partner and accredited by Novell.
  • Recognition and award for an outstanding contribution to the launch of the new Cape of Good Hope Bank, which was on time and within budget and highly acclaimed in the press.

Sep 2019 to Present

Software Engineer (Crypto & Security): Cambridge Quantum Computing Ltd, Cyber Security Division, Chessington.

Appointed as a member of the CQC Cyber Security Team to assist with the development of their IronBridge project delivering quantum sourced entropy to partners and third-party clients, and also offering implementations of the quantum-resistant (post-quantum) crypto algorithms currently being assessed by NIST. My primary roll was that of middleware and server components in CPP, C, C# and JS, but soon grew to also encompass embedded software (primarily C) on a variety of Xilinx Zynq 7xxx FPGA/ARM devices.

Other areas of development include development of OpenSSL engine plugins to make IronBridge randomness available to applications and users via the standard OpenSSL API and command line tools. The primary aspect of this involved acquiring the randomness from a remote IronBridge server/API using post-quantum KEM (Key Encapsulation), signing and PQ approved ciphers. One of the areas of application of this technology was in the secure take-on and communication between nodes in a Ethereum blockchain DLT - specifically evaluating the possibility of economically verifying a Falcon PQ Signature from within the blockchain by means of a smart contract implemented in Solidity.

Areas of work/expertise:

  • Full software Lifecycle, Windows and Linux, VMs and cross platform development, Code Quality.
  • Implementation of Crypto-systems using existing algorithms, Documentation, Mentoring and general dissemination of knowledge.
  • Networks and Networking

Tools and skills used include:

  • Design, Development, Code Quality, Testing, Integration, Security.
  • Distributed Ledger Technology (DLT/Blockchain), Ethereum, Solidity Smart-Contracts, Javascript, Node.js, RESTful API
  • MongoDB, SqlServer, MySQL, Docker, AWS, Azure.
  • git, GitHub/GitLab, Jira, Confluence, Linux, Bash.
  • Agile, Slack, Zoom
  • Open Source Software (OSS) and montoring of the currently approved algorithms by NIST

Aug 2017 to Jul 2019 (2 years)

Software Engineer (Core): Calastone Ltd, Innovation/Blockchain Team, London City.

Appointed as a member of the Innovation Team to assist with the development of their enterprising DMI (Distributed Market Infrastructure) blockchain project for Managed Funds. My primary roll on the team was to bring skills in software lifecycle, Agile, source control, architecture, software engineering disciplines and cross-platform knowledge, and of course, software development as I acquired knowledge of their chosen languages. On joining the team, the product had just reached proof of concept level, developed using a CQRS/Event Sourcing model primarily in Typescript/Angular on Node.js and Solidity on Ethereum, using RabbitMQ and EventStore for the event stores and MongoDB for the read model, all running on Docker on AWS. Over the following two years we (the Innovation Team) brought the system up to production level, migrating to SqlServer, Dotnet Core, Service Bus, and Kubernetes on Azure. As a prerequisite, we were guided through development and implementation of OAuth2/OpenID identity and claims providers as the corporate Single-Sign-On service. The DMI system went through various restructures as the business and performance requirements changed and matured with time, with our Agile approach proving invaluable. The DMI system ultimately went live in May/June 2019, offering a few areas of new functionality for the clients on the Early Adopter Program, but more importantly creating a resilient, robust and secure platform and Blockchain/DLT framework on which future products could be built. As the platform was approaching launch, there was another major project being moth-balled, so the company was down-sizing its engineering department. My role having been largely completed, I took advantage of this opportunity to seek new pastures.

Areas of work/expertise:

  • Full software Lifecycle, Agile, Windows and Linux, VMs and cross platform development, Code Quality.
  • Cloud Security assessment, Documentation, Mentoring and general dissemination of knowledge.
  • Networks and Networking, Cloud based Microservices

Tools and skills used include:

  • Design, Development, Code Quality, Testing, Integration, Security, Marketing.
  • Distributed Ledger Technology (DLT/Blockchain), Ethereum, Solidity Smart-Contracts, Web3, Javascript/Typescript, Node.js, Angular, DevExpress, RESTful API, CQRS, Dotnet Core, Cloud-based microservices
  • RabbitMQ, EventStore, MongoDB, SqlServer, Azure ServiceBus, Docker, Kubernetes, AWS, Azure.
  • git, GitHub (corporate), TeamCity, Confluence, Linux, Bash, Python, Powershell, DataDog.
  • Testing: Unit and e2e testing, PACT testing.
  • Agile, YouTrack, Peer Reviews, Wiki, Slack, MS Teams
  • Open Source Software (OSS) monitoring, CSA CAIQ (Cloud Security Alliance - Consensus Assessments Initiative Questionnaire) for Cloud based deployments
  • Support of Business and Marketing teams on their various exhibitions, conferences, product launches and international roadshows.

May 2012 to March 2017 (5 years)

Senior Software Engineer: Cisco International Ltd, SPVSS-CE Division (formerly NDS Ltd).
I was originally appointed as a Senior Software Integration Engineer with NDS in Staines, UK. My Initial responsibilities included integration and stabilisation of new features and new releases of STB middleware for BSkyB, the largest and most important and innovative customer of NDS. In 2013, NDS was acquired by Cisco, and was incorporated into the SPVSS Custom Engineering division.
I remained in the SI (System Integration) team for about two years, a large chunk of which I was responsible for an investigation and audit of all of the Open Source and 3rd party contributors in the code base, at which time an opportunity opened in the development team. My responsibilities here were component-owner of the HTTP and HTTPSERVER components of the STB middleware, as well as general development and debugging of any other component as and when required. During this time Cisco made a move to an Agile, git, Gerrit approach and away from the more traditional waterfall approach using the Rational ClearCase/ClearQuest tools. Under the new structure, the concept of "component-owner" was replaced by "feature teams" which were responsible for taking features through the full lifecycle of each new feature technical design, development, integration, component testing and full stack testing, and "Guilds" to offer specific technical expertise when required.
Areas of work/expertise:

  • BskyB, Fusion, Ethan, Sky-Q, On Demand/VOD, UHD, Adsmart.
  • System Integration, General defect triage, Debugging, Log analysis, Enhancement of auto-test and auto-log-analysis scripts.
  • Launch of new WiFi enabled AMS890W, Integration of new callback/UAM (User Activity Monitor) subsystem, JPA (Java/C interface), Bootlog improvements and test harness.
  • COSI/IPCentral/OSS/Software License Investigation and audit (BSD, GPL, LGPL, Commercial licenses etc.).
  • HTTP/HTTPSERVER/Curl/Lighttpd/FDM component owner incl. maintenance and support, DMS Regressions, DMS Recommendations, DMS Tests, Component Tests, Full Stack Testing.
  • Some recent work on PlayReady/CDM as contractually required by YouTube on future STBs. Tools and skills used include:
  • International team, Collaborative development, Peer Reviews, Code Quality, Testing, Integration.
  • Curl, lighttpd, openssl, and various proprietary secure communication subsystems, multi-process multi-threaded architectures.
  • git, Artifactory, Gerrit, ClearCase UCM, Jira, CDETS, ClearQuest, C, C++, CUnit, Linux, Bash, Python, Perl, Jive, Rally, ReviewBoard, Hudson/Jenkins, Wiki.
  • Open Source Software (OSS), COSI, IPCentral, BlackDuck Protex, Common Vulnerabilities and Exposures database (CVE).
  • Transport Streams (MPEG/DVB/DekTek), Linux, VirtualBox, GNU/gcc toolchain, STB emulation on VirtualBox, Continuous Integration (CI) test enhancements and support.

Mar 2009 to Mar 2012 (3 years)

Software Engineer (contract): Motorola Inc., Point to Point Wireless Networks Division (now Cambium Networks)
Appointed to design, develop and implement security components on Motorola's TI/DSP based point-to-point wireless Ethernet routers.

  • Responsible for implementation, testing and certification of NIST/FIPS Cryptographic Algorithm Validation (CAVS) of all implemented algorithms (AES, DSA, DRNG/DRBG, HMAC, SHA and 3DES/TDES).
  • Development, maintenance, enhancement, hardening (exploitation/penetration etc.) and support of various security and remote management modules and associated user/admin interfaces in compliance with FIPS, NIST and JTIC requirements, including SNMP/v3, Syslog, Telnet, SMTP, SNTP, RADIUS and HTTP/HTTPS/JavaScript, Cross-Site-Scripting, Code injection etc. with user-level exposure to Nessus and similar D/DoS and packet-crafting and injection test tools.
  • Audit and optimisation of Open Source and Commercial components of new Linux based 802.11 wireless router.
  • Configuration management (git, ClearCase, Mercurial, CVS, PVCS), defect management and test liaison.
  • Successfully met the internal standards, quality requirements, delivery schedules and production schedules.
  • Skills used: Agile, Embedded C, TI-CCS v2-v5, ASN-1, OpenSSL, JavaScript, Python, Configuration Management (ClearCase, WICC), Defect Management (Bugzilla, ClearQuest, Jira) and problem solving.

Dec 2006 to Dec 2008 (2 years)

Software Engineer (contract): Sharp Telecommunications of Europe Ltd. (Berkshire, UK)
Appointed to design, develop and implement e-Mail on Sharp's latest 3G, EMP-based handsets. Responsible and technical lead for middleware and application level development and porting to successive new platforms.

  • Maintained and supported all messaging apps and protocols (POP3, IMAP4, SMTP, MMS, SMIL, SMS and WAP).
  • Provided technical leadership to a mid-sized team of staff and international contractors.
  • Successfully met the internal quality requirements, customer specifications & production schedules.
  • Skills used: Analysis and design, Team lead, mentoring, embedded C/C++, supplier coordination, test liaison, defect management and problem solving, CVS and ClearQuest.

Jan 1999 to Dec 2006 (8 years)

Software Manager/project Manager: Tresor UK Ltd / Beaucom Inc. / Tripleton Ltd (Purley, UK)
Initially appointed as principle software engineer to this innovative technology arm of the pre-existing Tresor Entertainment group in Munich working on wired and wireless telephony in both niche and mass consumer markets. Initial projects were wired e-commerce consumer devices for HP, moving into Project Management of mobile phone development under the Beaucom group in Seoul, and ultimately filling the role of Software Manager in the UK spin-off, Tripleton, developing military-grade crypto-telephony and GPS vehicle tracking devices. Adaptability, creativity, innovation and travel were essential in this dynamic and energetic organisation.
Key skills and technologies used:

  • GSM, GPRS and GPS technologies, C and C++, Cryptographic systems, Mobile messaging and browsing, e-commerce interfaces and technologies (Deutsche Bank, Telesec)
  • Provided consultation and technical lead to a 60-strong engineering team in London, Seoul, Berlin, Munich, Linz, Trieste and Vancouver.
  • Soft skills: Business management, Project management, customer and supplier collaboration and liaison, marketing material, technical sales, training (to engineers, testers, sales, distributors and customers alike), organising and manning representation at security exhibitions in a variety of countries and cultures worldwide.

1996 to 1998 (2 years)

Senior Partner: Ice Technologies Cc (South Africa)
Software consultancy providing bespoke software solutions to the finance and telecoms sectors.

  • Projects incl.: Remote banking/POS system; Remote Salary & Electronic Payment System; Principle engineer on front-end systems for 3 new banks.
  • Team lead on Y2K project for entire front-end retail banking suite for 3 major banks in the Southern African subcontinent.
  • Skills used: C, C++, Communications/Networking, Testing, Team & Technical lead, client and customer liaison.

1991 to 1996 (6 years)

Software Manager & Director: Softnet Computer Services (Pty) Ltd (S. Africa)
Co-founder and partner in a software house & consultancy firm providing software development, deployment and support of systems and tools to the finance, education and business sectors.

  • Projects include: Suite of multi-platform, multi-OS, multi-language 4GL/RAD tools; Extensive Pascal-to-C conversion project; Corporate banking remote access systems; Suite of front-end retail banking systems; Security layer for Treasury System; Medical Insurance Analysis & Settlement system.
  • Skills used: Small business and project management, staff recruitment training and management, C, C++, Pascal, VB, Assembler, BTOS/CTOS, Windows, OS/2, NT, AIX Unix, Telecoms and communications security.
  • Developer/Contractor - Computer Lab Jhb Cc (South Africa) (1989-1991) (2 years).
  • Analyst Programmer - Barclays Bank Ltd (South Africa) (1984-1989) (5 years).
  • Trainee Engineer - Keeve Stein and Partners, Jhb (1983); Siemens (heavy current/PLCs), Jhb (1984);
  • Advanced C++ Programming (Incl. C11); Python: Intensive Introduction; Java JNI Embedded;
  • Agile: ScrumMaster; Scrum Fundamentals for Teams, User Stories Workshop; SAFe (Scaled Agile Framework): SAFe Scrum/XP for Teams; SAFe Basic Fundamentals for Managers.
  • Cisco Security White Belt Foundation; Cisco Security White Belt Advanced; Conditional Access (CA): Introduction to CA; Intermediate CA
  • WIFI 101 Foundation; HTML5 Introduction; ClearCase Command Line
  • Transport Streams (MPEG,DVB): Understanding Transport Streams; Service Information (SIM), Database (PCAT), File Delivery (FDM), Content Transfer (CTM)
  • GSM/GPRS Protocol Stack Architecture and Implementation; M2M Application Design and Development; Advanced APOXI Design, Support and Enhancement.
  • GSM Strengths and Weaknesses; Design and implementation of One-Time-Pass Technologies; Cryptography; Crypto Techniques; Establishment of a Cryptographic Certification Authority.
  • Developing Exciting Web Applications on .NET; Mastering MS Visual C++; MS Windows NT/Advanced Server Architecture, MS C (Adv. Techniques), MS Pascal (Adv. Techniques).
  • Unix Systems Programming; Information Engineering; Objectory.
  • Study towards BSc Engineering (Electrical) (Completed 3 years of 4 year course) (1981-1983).
  • Diploma - Computer Programming & CUC Certification (1984).
  • A-Levels: Maths, Engineering Drawing. M(AS)-Levels: Maths, Physics and Chemistry.
  • DOB: 1961. Full British Citizen (with Enhanced CRB for activities in the local Scout group).
  • Interests - My family, photography, Upcycling, DIY, cycling, squash, music, travel, genealogy, physics/cosmology

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published