CV

Alex Allmont: Software Engineer

Alex Allmont CV.pdf

Profile

Experienced tools and UI developer using C++ and Ruby as primary languages. Capable of writing highly maintainable code from concept through to optimal implementation. Has overseen customer-facing coding standards, branching and docs pipeline, and maintenance of continuous build system.

  • C and C++: 18+ years’ experience up to C++14 on Windows, Mac, Linux and console platforms.
  • Ruby: 7+ years’ experience programming Qt apps, pipeline tools and web applications.
  • API: Qt, wxWidgets, STL, OpenGL, DirectX, native Windows, Lua API and MaxSDK.
  • Design: OOP, UML, TDD and design patterns. Working within hardware constraints.
  • Optimisation: threading, C++ metatemplate programming, profiling, assembler.
  • Product: full-cycle experience leading teams through release and maintaining build systems.
  • Industry experience: Python, C#, PHP, COBOL, SVN, git, Unix, NSIS, DITA, Confluence, JIRA.

NaturalMotion Ltd: Morpheme Connect Developer

Morpheme Connect is a tool for authoring and debugging high quality interactive animation. By blending motion capture data, node control graphs and self-aware ‘Euphoria’ physics actors, animators are able to create dynamically controllable realistic motion for games and VFX. I have been on the project from pre-1.0 up to version 8.0, working with researchers and artists to develop cutting-edge 3D software.

  • User Interface: coding UI, workflow, 3D interaction and core application technology.
  • Ruby toolchain: wrote Qt and command tools to manage dev workflow and maintain build server.
  • Profiling tools: implemented system for live in-application performance analysis.
  • Client support: tech design and tools for Rockstar, vendor integration tools for Unreal.
  • Scene graph: design and implementation of OpenGL scene graph with script API and manipulators.
  • Script API: integrated Lua into Morpheme core and UI with extensible metatemplate C++ bindings.
  • Windows API: multimedia timers, threaded asynchronous file monitor.
  • Documentation pipeline: automating DITA docs generation for customer manuals.
  • Release process: acting as head of Software Delivery during Morpheme 2.0, overseeing dev team.
  • Web tools: metrics graphing and interactive code review systems using Sinatra and jQuery.
  • Education: lectured on geometric algebra to improve understanding of quaternion rotations.
  • Mentoring: version control usage, best practice, running intern scheme.

ArtiCAD Ltd: Head of Programming

ArtiCAD allows rapid on-site prototyping of kitchens and bathrooms with dynamic 3D visualisation. I started as the sole developer on the legacy codebase, overseeing the team as it grew.

  • Script API: Lua integration allowing for rapid development of customer requirements.
  • OpenGL previews: provided the ability to display live customisations whilst editing models.
  • Autodesk integration: developed importers and exporters for DXF and 3DS.

SCEE London: Games Developer

Working in a tight team producing games for the PlayStation 1 and 2. Development of robust code under pressure whilst maintaining readability and scalability.

  • User interface: interactive UI for ‘This is Football 2’ on PS1 in collaboration with artists.
  • Football manager AI: automatic team management for ‘This is Football 2’.
  • Traffic simulation AI: design and coding of route and curve solving for ‘The Getaway’ on PS2.

Applied Communications Incorporated: Programmer Analyst

ACI develop financial software used in European cash machines and servers. Server-side software was written in a Pascal/C hybrid called TAL, with the client-side written in COBOL. Code was carefully reviewed and tested to ensure it was delivered to specification.

  • Cryptographic hardware: integrating secure interface between Lloyds and TSB systems.
  • Chip card interchange: enhancing existing system to support EuroPay chip card transactions.
  • Client support: on-site work with Natwest and LloydsTSB configuring and supporting systems.

Education

  • Oxford Brookes University: MA Distinction in Contemporary Art and Music
  • Oxford University: Mathematics for Games Programming
  • Open University: MST121 Using Mathematics
  • University of Plymouth: Computer Systems and Networks (incomplete)
  • Gordano Comprehensive School: GSCEs and A-Levels

Interests

I work on music, art and electronics projects to cultivate my skills and interests. Recently I’ve been developing live performances with modular synths. My musical kinematic sculptures have been featured in Wired Magazine and at Music Tech Fest which led to me speaking at their events. I have also run presentations and workshops for museums and universities. My projects on www.alexallmont.com combine electronics, embedded software and experimental music, along with practical skills like resin casting, woodwork and papercraft. I also enjoy bouldering, walking and keeping fit at the local gym.