MRDA(7)                           User Commands                                   MRDA(7)

NAME

Michael Davies - software developer/architect/manager

SYNOPSIS

mrda [--developer] [--architect] [--leader] [--community] [--other]

SUMMARY

Note: this resume is better viewed at https://mrda.io

I'm passionate & customer-focused, and able to develop software, lead teams, architect systems, and find innovative solutions to deliver great outcomes.

My proven skills span many technology domains in a wide range of industries, and this gives me the ability to bridge the divide between technology and business. I am capable of leading design discussions around a whiteboard, mentoring developers, explaining technical concepts to project managers and clients, collaborating remotely with the open-source community, and presenting at conferences.

I think cross functionally, applying expertise gained from large to small sized companies, including those in open-source, defence, telecommunications and aerospace domains. I thrive on new challenges and love to drive continuous improvement in organisations.

My expertise includes:

* Software Development
* Software Architecture
* Open-Source Software and Community
* Managing Teams
* Problem Solving and Lateral Thinking
* SCRUM and Agile Methodology
* Public Speaking

OPTIONS

--developer

Extensive experience developing software in many languages including python, C, ansible, bash, Java and perl, developing on or for Linux, Windows, and OS X platforms. Some highlights are:

Development in python and ansible, adding support for baremetal server provisioning to the Rackspace Private Cloud (RPC) product. This involved contributing to the ironic, nova, and openstack-ansible OpenStack projects and starting the openstack-ansible-ironic project. Backported this new functionality into an existing supported product release to ensure the satisfaction of a strategic customer. Some of my OpenStack commits are listed here: https://mrda.io/resume/openstack.html

Represented Rackspace at OpenStack Summits, design mid-cycles, and other open-source conferences, giving presentations and participating in design discussions.

Development of a sit-in simulator and embedded system written in C and Fortan, controlled via an X-Windows application written in C++ that resulted in the on-time and on-budget delivery of a challenging project that won an Australian government award for small project delivery.

Refactoring of a Java Virtual Machine (JVM) written in C running on a Smartcard Operating System to enable speed/size trade-offs to be analysed, and adding support for additional cryptographic algorithms.

Development of a distributed C++, POSIX threaded, TCP/IP client/server application running on Linux and Solaris, allowing compute intensive bottlenecks to be overcome through parallelisation.

Handheld GPS application development in python, with Linux kernel modifications in C.

Reverse engineered, and reimplemented in bash, a deployment system for a complex multi-node cloud-hosted PHP application that made use of mysql, redis, varnish, and nginx in an AWS environment.

Development of a decoupled, fully redundant set of distributed Java services, using Apache ServiceMix and ActiveMQ, to provide a business-critical, multi-region, multi-brand, customer web facing capability.

Creation of local development environments that simulate production cloud-hosted web applications using docker and shell-scripting.

Developer of junkcode and useful miscellania.

--architect

Overseas secondment to Illinois, USA for 6 months joining a team of architects planning the merging of 3 acquired competing products, implemented in enterprise Java and .NET technologies, into a new single product line.

Designed approaches for migrating customers and services as a result of company mergers, allowing new customers to sign-up while providing a seamless migration path for existing customers.

Led the technical activities for a new system to qualify customers prior to signup, creating an evolving product roadmap, developing architecture and design artefacts in UML, ownership of the XML data model, and providing support to the development team.

Primary technical contact for the integration of a cloud-hosted application into the existing staff workflow. Day-to-day management of the development team building integration web services, and management of the external sofwtare vendor. The end result was the adoption of a new CRM system, and the deprecation of an existing home-grown solution.

Led the Requirements Gathering and Software Architecture discussions in pre-sales and pre-project start up capacities at different organisations across several projects.

--leader

Oversaw the development of a family of related products – a smartcard operating system, a Windows application for loading applets onto the smartcard, and an e-wallet applet – across a team of 30 software engineers, ensuring timely delivery and an integrated release schedule.

Leading a team of work-from-home software developers geographically spread across Australia, all contributing to an upstream open-source project, providing coverage over different domain areas so as to build a cross-functional skunkworks team.

Started a new project and led a team to develop Java software on a mobile phone: from initial customer contact, requirements gathering, through to design and prototyping. This was made more challenging as the customer was based in Tokyo, Japan but resulted in building a relationship with a new customer in a different market than we had been operating in.

Lead and managed the day-to-day activities for a 20-person team supporting customer & staff web applications. This involved both strategic planning while providing day-to-day support, allowing business-as-usual activities to continue while planning for the replacement and retirement of tools.

Managed 35 cross-functional developers, including HTML/CSS designers, Javascript and PHP developers, and devops engineers: creating career development plans, providing performance feedback, refining and documenting software processes, and developing position descriptions for all staff. Built the company leadership team, proposing strategic initiatives, implemented accountability for action items, planning staff resourcing needs, and growing the number of technical staff by 50% in less than a year in response to strong growth in the business.

--community

Passionate about Linux and open-source, I've been continuously involved with the FOSS community since I started using Red Hat Linux 5.0 and Linux kernel 0.99.something, contributing and supporting the community in a number of ways.

* 2017 winner of the Rusty Wrench award, for services to the Australian Open Source community.

* Lead organiser of the linux.conf.au 2004 conference held in Adelaide, Australia

* Program Chair for linux.conf.au conference for over 10 years (2004, 2010-2019)

* Member of the linux.conf.au Papers Committee, 2004-2019

* Regular member of the Ghosts of Conference Past team tasked with bootstrapping the local organising team for the linux.conf.au conference.

* Governing Council Member, Linux Australia 2004

* Creator and maintainer of Planet Linux Australia blog aggregator

--other

Recorded public presentations:

* Openstack, Ansible & Ironic, Making Baremetal Deployments Easy, Openstack Summit, Barcelona 2016
* Getting your CFP abstract accepted 101, linux.conf.au, Perth 2014

Certifications

* BSc (Ma. & CompSci), University of Adelaide
* Red Hat Certified Engineer (RHCE), id: 110-995-354
* Certified Scrum Master
* First Aid certificate (incl. cardiopulmonary resuscitation)

Miscellania

* I'm an avid parkrun runner
* Also, the first and only person to have dunked Linus Torvalds in a dunk tank :)

HISTORY

* Red Hat

- Principal Software Engineer

* Aligent

- Software Development Manager

* Rackspace

- Software Development Manager
- Senior Software Engineer

* Internode
  (now a wholly owned subsidiary of TPG)

- Software Architect
- Software Team Lead

* Motorola

- Senior Software Architect
- Software Team Lead
- Senior Staff Engineer
- Senior Software Engineer

* BAE Systems

- Software Team Lead
- Senior Software Engineer

COLOPHON

I first saw the idea of presenting your resume as a man page from a colleague while working at Rackspace. Major is a super smart, really nice guy. See his original page at majorhayden.com.

SEE ALSO

* E-mail: michael at the hyphen davies dot net
* Keybase: mrda
* Twitter: mrda_
* IRC: mrda on irc.freenode.net
* Github: https://github.com/mrda
* LinkedIn: https://www.linkedin.com/in/michaeldavies/
* References available on request.

MRDA(7)                               2019-06-03                                   MRDA(7)