Brendan Molloy

🌍 Göteborg, Sweden 📱 [phone hidden - enable JavaScript] 📧 [email hidden - enable JavaScript]

Summary

Passionate, multi-disciplinary, professional software architect and manager with strong communication skills and the ability to learn quickly. Demonstrated versatility for software development, business development, team management, and DevOps. Committed to empathetic team management, high quality, reusable code and user experiences that will stand the test of time.

Employment History

Technical Lead Meela

– Present

Director The Techno Creatives

Promoted from Lead role started in April 2019.

Management role with close interaction with the executive.

  • 2022: mentor for three junior web developers.
  • 2021-2022: managed team of ~14 software developers, while being tech lead on a number of project teams and taking part in company leadership activities.
  • 2021-2022: continued as architect of the Elevate IoT platform.
  • 2021: assisted in transition of company to using an effective progression framework for promotions and professional development of individual contributors.

Lead Software Developer The Techno Creatives

Promoted from Senior role started in December 2017.

Worked with clients ranging from Veoneer, Navico, TYRI, 24rental, and personally secured tender with UiT The Arctic University of Norway to deliver open language technology.

Experience with macOS, Windows, Linux, iOS, Android, web and embedded development, with a particular focus on integration and architectural aspects of development as role developed to be more architect-focused.

Responsible for the management of language technology for several language communities such as the Sámi people on behalf of UiT The Arctic University of Norway, managing three primary areas: keyboard development and deployment, spellchecking and grammar checking integration, and package management.

Role incorporated elements of team management, mentorship of junior developers, architecture planning for new projects, scoping of new projects and software development. Since late 2020, also included DevOps responsibilities.

  • October 2020 – January 2021: Temporarily transitioned into DevOps/Ops to relieve team stress during COVID-19 pandemic. (Kubernetes, Terraform, Docker, NixOS, GitLab, Concourse CI, DigitalOcean, Azure, Vault, Consul)
  • August – September 2020: Deployed Elevate IoT services into production for 24rental trailer rental service.
  • 2020: Focused on providing support to Divvun while architecting and team-building the Elevate IoT project.
  • Early 2020: Managed transition from Subversion to GitHub by assisting with planning of migration and overseeing development of multi-repository git repository management tool.
  • November – December 2019: Lobbied on behalf of Sámi language communities for better standards implementation at major software corporations, providing and implementing a media strategy, and organising meetings with stakeholders to further open language technology development. Engaged with representatives of other language communities and provided direct assistance for implementing their own keyboard solutions.
  • September – October 2019: Led the introduction of a structured recruitment programme, with clearly defined requirements, application processing and migration assistance, in collaboration with other team members.
  • July 2019 – Present: Begin working on large government tendered project for UiT The Arctic University of Norway, including: complete rewrite of iOS keyboard (Swift), implementation of CLDR XML keyboard converters (Rust), further enhancements to package management infrastructure, and Chrome OS support for Sámi keyboards (JavaScript, and Chrome OS is truly awful).
  • May 2019 – July 2019: Manage team implementing spell checking for the Sámi languages for Microsoft Office on Windows and macOS. Further develop Páhkat package management infrastructure and user experience.

Senior Software Developer The Techno Creatives

Promoted to Lead Software Developer in April 2019.

  • March 2019 – May 2019: Lead team of six to implement a Bluetooth Mesh UI/UX for remote-controlled industrial lamps.
  • February 2019: Implemented novel prototype for implementing asynchronous, parallelisable pipelines of linguistic content using Rust, Actix and Cap'n Proto.
  • January 2019: Implement next phase of Páhkat package management infrastructure for macOS and Windows with small team, including CI/CD configuration.
  • December 2018: Optimise Divvun's spellchecker technology in Rust, bringing stress test speeds down from 60 seconds to 6 seconds, leading to successful deployment of Sámi spellcheck for iOS and Android.
  • November 2018: Manage team to deploy CI/CD infrastructure for Divvun to deploy iOS, Android, Windows and macOS keyboard layouts and spell checkers, using Travis CI and Páhkat package management.
  • September 2018: Design and implement event-driven unidirectional state server using protocol buffers, gRPC and Rust to support car-based software services connecting sensors and actuators, including SDKs as part of five sprint agile project (Rust, JavaScript [Node.js], Python 3)
  • May 2018: Design a robust RESTful API for yacht fleet management apps (TypeScript, C#, OpenAPI)
  • April 2018: Create open source OpenAPI v3 generation tool to simplify integration of 3rd party APIs for Weret and later other customers (TypeScript, Kotlin, Swift, Rust, C#)
  • March 2018: Implement the macOS client for Divvun's package management system.
  • January–September 2018: Develop infrastructure and architecture for Weret smartwatch apps on Android and iOS (Kotlin, Swift, Rust, JavaScript, waaaay too much Bluetooth)
  • December 2017–January 2018: Integrate natural language tooling and Google Assistance alpha SDK into in-car software expo demo codebase (JavaScript, Python, NLP)
  • December 2017: Build experimental revision management plugin and server for Sketch (JavaScript, "CocoaScript")

Chief Technology Officer Localift (defunct)

April 2016 – May 2017

Responsible for the development and deployment of a ride scheduling and monitoring app for Android and iOS, including a backend built on Node.js and PostgreSQL. Built and managed small team from June 2016.

Developed minimum viable product for Android, iOS and backend alone over first three months. Rapid development of native apps was made possible due to strong adherence to functional reactive programming principles (Rx) and reliance on code generation (OpenAPI). Approximately one-third of the current code bases for iOS and Android consists of code generated from the same base templates, limiting code duplication and maintenance.

Resigned due to lack of financial viability of the platform. Company defunct since 2018.

  • App features include: ride tracking, ride scheduling, mapping integration (geocoding, place search, map interactions), friend lists, groups, messaging, push notifications, calendar integration, Facebook integration
  • Built and deployed iOS (Swift), Android (Kotlin/Java) and Node.js (JavaScript) backend alone in early sprints
  • "Acceptance Test Driven Design" approach using Cucumber as cross-domain feature description language and automated testing language
  • Infrastructure has significant coverage by unit and integration tests
  • API nodes driven by OpenAPI schemas and high-performance routing
  • Take part in interaction between founders, stakeholders and potential investors
  • Implement and manage continuous integration infrastructure
  • Deploy and manage production servers (API nodes and database)

Consultant Divvun (UiT The Arctic University of Norway)

2009 – 2017

Long-term client. Projects mostly relating to speller technology for indigenous and minority languages (particularly Sámi and northern Canadian first nations languages) such as spellcheckers or custom software keyboards.

Working on several small contracts throughout 2017. These projects have used: Python, C, C++, Objective C, Swift, Java, JNI, JavaScript, and a variety of obscure and less obscure build tools. Platforms include: Windows, macOS, Linux, Android, iOS and the web.

Some of the projects below involved subcontractors to supplement the work while I took on the role of CTO of Localift. Recent projects include:

  • 2017: Implement a versatile package manager for managing all components of the Divvun ecosystem, starting with Windows support (Rust, C#).
  • 2017: Deploy keyboards to Windows 7–10 environments, with additional keyboard management tool. (Inno Setup, Rust, Python, code signing, blood, sweat, tears)
  • 2017: Port a C++ speller library to Rust (Rust, C++)
  • 2017: "MacDivvun" spellcheck service for macOS (Swift, C)
  • 2016: Create speller web API in Node.js for use by journalism clients (JavaScript, C++)
  • 2015: Update C++ speller library hfst-ospell to support mmap loading of spellers to support iOS (C++, Autotools, blood sweat and tears)
  • 2015: Port the Android Open Source Project keyboard to support custom locales and custom spellers (Java, C++, JNI, Autotools, sometimes crying)
  • 2015: Fork an open source iOS 8 keyboard to support custom locales and custom spellers (Swift, C++, Objective C, Autotools, also sometimes crying)
  • 2015: Create kbdgen project to support generating keyboards from standard templates for iOS, Android, Windows, macOS and Linux (Python)

Senior Software Engineer
Avoka Technologies

July 2011 – April 2014

Full time research and development position, initially focused on adding a new output mechanism to an XML-based form design and deployment product that initially could only render to PDF, to achieve full HTML5 rendering support across all major desktop and touch browsers.

In mid-2013, promoted to senior role. Shifted to working on a new product focused exclusively on HTML form outputs, with HTML as the document language (as opposed to XML) and AngularJS as the framework for developing the editor and form dependencies, and extensive use of LESS for styling, including as the language used for serialisation of styles.

  • Heavy focus on JavaScript development for managing interaction model of forms
  • Large amount of XML/HTML parsing and generation
  • Backend coding in Java to support generation of HTML from XML data
  • Enterprise environment with customer interaction
  • Strong focus on modern, interactive user experiences
  • Forms supported on all modern browsers, and IE8–IE11

Google Summer of Code Participant Apertium

May 2011 – August 2011

A Google Summer of Code project completed for a natural language project called Apertium. The project entails the development of a quality control framework to better control the integrity of morphological dictionaries in a methodical manner, not unlike unit testing for programming languages.

Parts of this project are still in use today by organisations such as UiT The Arctic University of Norway.

  • Significant XML manipulation
  • Development of XML schema for statistics storage format
  • Web page and graph generation for reading statistics visually
  • Create testing applications including coverage, regressions and ambiguity
  • Experience using subversion and git

Further Information

As a multi-discipline developer, I have experience with building web projects, efficient web backends, embedded projects, terminal-based applications, test harnesses, native apps for mobile devices, and desktop apps. As a consequence, I am fairly proficient in several programming languages.

In the last 3 years I have been required to use in a professional context (in alphabetical order): C, C#, C++, Java, JavaScript, Kotlin, Nix, Objective C, Python, Rust, Swift, Terraform, TypeScript.

I prefer working with Rust, TypeScript, Kotlin and somewhat reluctantly with Swift.

Tech buzzwords I've interacted with recently include: Kubernetes, Terraform, Vault, GraphQL, polyglot projects, Solid.js, Vite, pgsodium, Tauri.

I use git for source code management. I am happy to work in Windows, macOS, Linux or even more obscure environments without issue.

Specific examples of suitability for a role or proficiency in a given context may be provided upon request.

Education

2016
Bachelor of Science in Information Technology, with Distinction
University of Technology, Sydney

Languages