Page Body
Curriculum Vitae
The canonical address for this CV is http://www.matthew.ath.cx/cv. If you are not viewing this at that address, please see there for an updated version. This CV is also available in Adobe PDF format and Word format.
Personal Details
Email Address: | cv@matthew.ath.cx |
Phone Number: | +447866492434 |
Github: | https://github.com/mjj29 |
Employment
May 2018–present | Software Architect, Software AG https://www.softwareag.com/en_corporate/platform/iot.html Architect leading designs for the core high-performance streaming analytics engine in best-of-class IIOT platform. Technical lead for features across multiple agile teams, including senior development and review roles. Leading system administration for R&D systems including on-prem, containerized and hybrid-cloud. Planning and architecture roles extend across multiple product areas. Specific achievements: Personally ran a complete R&D infrastructure rebuild and recovery for the Apama team after significant cyber attack, restoring productivity and the ability to deliver customer fixes faster than the rest of the company. Designed features to enable customers to improve performance of their code running in the platform. Lead and implemented a devops transformation for R&D to hybrid cloud and containerized, infrastructure-as-code in Kubernetes and AWS using a gitops workflow for infrastructure deployment. Independently produced Functional extensions to the platform DSL. Cross-product architecture lead for rearchitecting the input layer for the platform. |
July 2013–May 2018 | Principal Software Engineer, Software AG C++, Java and Python engineer leading a team to design and deliver features. System administration for R&D systems. Technical recruitment interviews, new hire onboarding and mentoring. Specialized in performance and security aspects of the high-performance native runtime. Specific achievements: 2014-2016: Concepted, designed and delivered declarative, multi-threaded, multi-language and multi-platform python-based build system (https://github.com/xpybuild) to unify product builds. Replaced build and fix delivery system. Wrote an automated performance analysis toolfor monitoring and improving product performance. Designed and built in-process connectivity and integration for the platform, reducing latency and improving deployment architecture. 2017-2018: Lead a project to update compilers and platforms to move to modern C++ language features. Added containerized deployment for the product to enable customer migrations to cloud deployments. Proposed, designed and delivered Python integration to the custom DSL including support for ML/AI. |
May 2008–July 2013 | Senior Software Engineer, Progress Software C++, Java and python developer on world-leading, high-performance, multi-threaded realtime streaming analytics platform. Delivering features on time and with high quality and debugging tricky concurrency and performance issues in the platform. Specific achievements: 2008-2010: Designed and built an interactive debugger for the custom DSL in the platform and proposed, built and delivered Java extensions to the DSL. 2011-2013: Designed and built declarative stream-based language extensions to the DSL and underlying runtime. Delivered a compiled backend for the DSL using LLVM for high performance language execution with benchmarks similar to natively-compiled C++ and Java. |
Education
2004–2008 | Computer Laboratory, University Of Cambridge PhD Doctor of Philosophy in Computer Security Thesis topic: consumer security devices for Internet banking |
2001–2004 | Trinity Hall, University Of Cambridge MA Masters Degree in Computer Science |
Patents
Issued Jan 2016 | Second-order tuning of spin loops US9262233B1 |
Filed Dec 2022 | MULTI-USER IN-MEMORY QUEUE FOR MULTI-TREADED AND/OR MULTI-PROCESS COMPUTING ARCHITECTURE US2024012645A1 |
Publications
April 2008 | A Real World Application of Secure Multi-Party Computations Presented at the 16th International Workshop on Security Protocols http://www.matthew.ath.cx/publications/2008-JohnsonOwen-duplimate.pdf |
October 2007 | A New Approach to E-Banking Presented at the 12th Nordic Workshop on Secure IT Systems http://www.matthew.ath.cx/publications/2007-Johnson-ebanking.pdf |
April 2006 | Usability of Security Management: Defining the Permissions of Guests Presented at the 14th International Workshop on Security Protocols http://www.matthew.ath.cx/publications/2006-JohnsonSta-Guests.pdf |
Organizations
December 2012–present | UK Magic Officials Ltd Founded an organization to train and support tournament officials for tabletop card games. https://magicofficials.uk |
December 2012–present | Magic: The Gathering Level 3 (Premier) Tournament Judge Responsible for managing teams of judges at the highest level tournaments across the world and for local community development within the program https://blogs.magicjudges.org/ |
April 2009–present | English Bridge Union Congress A Tournament Director Tournament and rules expert on the national panel of directors responsible for running bridge tournaments across the UK. Certified by the European Bridge League as a National Tournament Director https://www.ebu.co.uk/ |
Open Source Projects
Feb 2017–present | Xpybuild Co-author, Xpybuild build system Xpybuild is a fast cross-platform, cross-language build system that uses Python as the file format. https://github.com/xpybuild |
Dec 2006–Jan 2010 | dbus-java The Java binding for the dbus system bus on Linux. https://dbus.freedesktop.org/ |
Dec 2006–Jan 2011 | Debian Certified Debian Developer, maintaining several packages, including designing and building the Java packaging framwork and regularly contributing bug reports and bug fixes for others. https://www.debian.org/ |
Skills
- Language:15 years C++ expert including STL, template metaprogramming, C++20
- Language:15 years Extensive use of Python
- Language:Significant Java experience over 20 years
- Language:Developed a custom DSL compiler, intepreter and JIT using ANTR and LLVM
- DevOps:Linux and Windows System administration
- DevOps:AWS, Docker and Kubernetes hybrid-cloud devops
- DevOps:Git, SVN, Github, Ansible, Gitops
- AI:LLM/API with OpenAI and Copilot
- Development Methodologies:Agile including Scrum and Kanban, Waterfall, Design Thinking
- Nontechnical:Excellent communication and presentation skills
- Nontechnical:Strong team leadership and mentoring skills
- Nontechnical:Experience in technical recruitment and onboarding
- Nontechnical:Experience in technical writing and documentation
- Nontechnical:Experience in public speaking and conference presentations
- Nontechnical:Software AG Global Architect Program graduate