Career Profile
I am an experienced engineering manager and leader with over 12 years in software engineering and technology. For the past 5+ years, I have led feature teams and backend development teams at Zendesk.
I lead by example, emphasizing values, empathy, direct communication, and a strong focus on feedback. I integrate engineering experiences with an analytical, data-driven problem-solving approach.
Before transitioning to people management, I was as an iOS engineer on the feature teams in Zendesk, working on their Mobile SDKs with a focus on both the end-user and the touch points for integrators. Prior to this, I was an iOS engineer in Drop Kitchen / Fresco developing their iOS App and Paddy Power.
With a longstanding interest in effective team collaboration, my move into management was a natural progression in my career.
In my spare time i’ve designed and built BestLift - A workout tracking app for iOS.
Projects
Bloomly is a plant watering application that I developed as a way to familiarise myself with some of the SwiftData APIs. It uses local notifications to inform the user when a plant needs to be watered.
Users can decide to modify the watering schedule when they water a plan outside the standard schedule.
Users can also create galleries of each plant to track its growth and health.
BestLift is a simple way for you to track your workouts. Exercises & workouts are stored locally. No subscriptions or in-app purchases required.
BestLift started as a side project & as a way to explore new Swift features and design patterns in a real application. As part of its development, I used a local GitHub Actions Runner to build and distribute to TestFlight on merges to develop and App Store distribution for release branches. The GitHub actions workflows include testing, linting, running SonarQube and Danger checks.
danger-spelling is a Danger plugin that wraps the python library pyspelling and runs on modified or provided files in the diff of a pull request.
danger-spelling has a simple API to provide ignored words or files. Leveraging the Danger DSL, spelling mistakes are posted to the pull request as comments.
Experiences
Mobile Services is a backend team in the Mobile Department consisting of 5 to 8 engineers. Our team has multiple products, services and tech stacks. One high performance Scala application and some other Ruby on Rails services as well as some React applications.
Some of my responsibilities and accomplishments were…
- Performance management & professional development for a team of 10 engineers.
- Grew the team from 3 to 10 engineers.
- Managed how a company wide initiative to use Scrum was implemented on my team to best suit our needs.
- Defining L4 OKRs (informing individual Work Goals) from company L2 & L3 OKRs. Relating our work back to these in tangible and reportable ways in Jira was vital.
- Safe Pair of Hands as a mission goal for the team.
- Driving quality in the work we deliver. In all aspects of our delivery. Including planning, development, deployment & monitoring.
- Work classification to determine where our efforts are going.
- Strict prioritization to reduce context switching for the team.
- Implemented “Feature Owners”. Each engineer on the team is responsible (RACI) for the feature they are working on. They refine, plan, execute and monitor their feature in collaboration with myself, PM and any other stakeholder.
- Defining, formalizing “How we Work” with the new team. Helped standardize a DoR and DoD for the team and PM.
- 9 month, quarterly and annual planning with PM & Messaging leadership. Collaborated with teams in Montreal and Melbourne on feature delivery.
- Coaching from interns to Staff engineers.
- Documentation as a first class citizen.
- Managing a team of 5+ engineers.
- Worked with PM and other Mobile Leadership on a shared product roadmap.
- General personnel management such as 1:1s, professional development conversations, performance feedback and onboarding.
- Direct calls with high profile customers when they have issues.
- Championing standards for our epics / stories & scenarios.
- Built the first Answer Bot SDK for iOS, including the shared component CommonUI. CommonUI would later be moved and used as the UI layer of the Messaging SDK.
- Moved all SDKs under a single monorepo.
- Built automated release tooling to allow all the SDK teams using monorepo release multiple artifacts at once.
- Worked to move the SDK teams to CI/CD.
- Worked with the SDK teams to move to git-flow.
- Swift 2.3 upgrade
- New App features such as
- New “About Recipe Screen”
- New “tip images” on recipe step cards
- Full screen “smart appliance controls”
- Appliance and App onboarding flow.
- Refactoring, General bug fixes.
- Hiring of QA manager
- Localization of white label app
- Used coordinator / router pattern for view presentation / embedding
- Developed new native flagship iOS app for Paddy Power.
- Helped develop modular libraries to be used across the global PP ecosystem.
- Notable features include “One Touch Betting and user preferences”, “Event Navigation - Power Nav”.
- Took part in all sprint refinement, estimations and planning sessions.
- Worked with UI and UX teams on delivering the best user experience.
- Peer code reviews to approve pull requests.
- Adopted TDD approach to feature development.
- Used Kiwi for BDD. OCMock & XCTest for unit testing.
I started in PP as a graduate Web Developer where i worked in the E-Commerce department. I was embedded on the native mobile team as a test engineer where I worked on writing and fixing automated tests.
- Selenium WebDriver and in house framework for automation.
- Automation of test scenarios.
- Scrum - Daily Standups, estimation, refinement and planning.
- Presentation of work to eCommerce and automation teams.
- Included CSV event uploader for automation scenarios.
- Create new views in database to increase performance on tools using large data sets.
- Redevelop user management tool to be used by IT department.
- redevelop main services view in company application to show more relevant information.
- Bug fixes.
- Application testing for server migration.
- Development and testing of new processes.
- Ensuring provisioning systems are functional before and after releases.
- Provide systems and application support throughout the business.
- Worked with developers to ensure applications conform to business requirements.
- Managing team ticket queue and ensuring bugs are reported and documented.
- Coordinated data reconciliation projects.
- Testing of new developer tools used internally by the business.
Education
Awarded a 2:1 BSc in Experimental Physics Other subjects studied as part of degree
- Computer Science
- Maths
- Chemistry