Senior Full Stack Software Developer
Melbourne, Victoria, Australia
Last Updated: 21 February 2025
Overview
- Full-time: Analyst/software developer. Full-stack web applications. 25 years professional experience.
- Part-time: Technical co-founder. Bootstrapped SaaS founded 2020 (15-20 hours/weeks).
-
Career roles/responsibilities:
Full-stack software developer,
Front-end web developer,
Data analyst,
A/B test integration developer,
DevOps engineer,
Team lead,
Manager,
University tutor,
Self-employed small-business owner (software consultancy). - I advocate for code comments, documentation, and systematising anything that needs to be repeated.
- I'll do the jobs that other engineers don't like: documentation, testing, business analysis, data analysis, detailed solution design, BAU/maintenance development, talking to people, customer support.
Experience
Senior Software Developer
Full-stack web application software developer.
- Part of a team dedicated to consulting directly with a specific large customer.
- The only team required to work across the entire platform, requiring close collaboration with other teams that own individual modules.
- Directly involved in customer meetings, planning, scoping, specification writing, solution design, and product demos.
- Wearing the hats of: front-end web developer (React/ExtJS), back-end developer (C#/SQL Server/MongoDB), functional tester, software architect, and business analyst.
- Writing extensive technical requirements/specification and performing business requirements analysis in larger projects.
- Working on projects and delivery ranging from days to over 12 months, often concurrently.
- Working both collaboratively and autonomously.
- An advocate of documentation, I re-invigorated the developer documentation by creating dozens of process and technical articles in the company wiki after joining.
- Providing support to team members and the wider development department wherever possible.
- Learnt a few new tricks in C#. Learnt React 18. Working with TypeScript. Muddling through GraphQL.
Skills
- C#
- JavaScript
- React.js
- .NET Framework
- Microsoft SQL Server
- Software Documentation
- Business Analysis
- Technical Solution Design
- MongoDB
Technical Co-founder
Lotus' core product is automated time tracking and timesheet generation.
- Designed and built a complete SaaS product platform. Separate API back-end (.NET, Azure App Service & Azure SQL) and web front-end (Vue.js, Netlify).
- Setup automated CI/CD with GitHub Actions for Azure deployments (Azure App Service) with multiple test and production environments in Azure and Netlify.
- Created a background monitoring agent for Windows (WPF) to gather meta data and send to the API for processing.
- Successfully completed early stage beta testing with a teams in 2 large accounting firms.
- Adapted the platform to a more loosely coupled modular design to accommodate different projects with partner businesses.
- Managed the development of an iOS/Android mobile app by a remote (international) development partner.
- Managed and mentored a graduate developer.
- Partnered with 5 separate companies over the last 2 years to build and host other business modules.
- Continued developing the platform outside of a full-time job since February 2021.
- Responsible for all technical requirements analysis, architecture, and business documentation.
Skills
- C#
- Netlify
- Vue.js (v2 and v3)
- .NET Framework & .NET 8 (ASP.NET MVC)
- GitHub
- SQL Azure (SQL language programming)
- DevOps
- Microsoft Azure
- .Net (5-8)
- Project Management
- Business analysis
- Technical documentation
- Software architecture
- Project Management
Team Lead / Project Manager
- Recruited and managed a 3-person development team and 2 PhD researchers, for a software research project in collaboration with Mornington Peninsula Council (MPS).
- Responsible for maintaining budget, planning, technical direction.
- Attended weekly multi-vendor stakeholder meetings.
- Worked closely with the primary Project Manager for MPS.
Tutor
- Ran 2 tutorial labs per week for a Database Applications course.
- Taught Oracle databases.
- Learnt and taught MongoDB.
- Taught web application design fundamentals.
Team Lead / Support Project Coordinator
- Managed and coached 12 student teams across 2 semesters.
- Provided guidance and support with weekly status meetings, and availability on Slack.
Self-employed Consultant
- Self-employed developer and boutique consultancy owner.
- Developed and maintained websites for small businesses, primarily with WordPress.
- Designed and developed an internal student portal for a Melbourne University college (using WordPress).
- Managed 2 full-time staff in India for 3 years.
- Closed the business because due to a lack of sales experience and growth.
Skills
- WordPress
- PHP
- HTML/CSS/JavaScript
- MySQL
- PHP
- Web Application Development
- WordPress
Team Lead / Senior Software Developer
Full-stack senior software developer. I worked on 3 projects in my time with Datacom:
- Project 1 (Australian Unity) : Senior developer / Team lead. Developed an orchestration tool to automate the creation of EC2 dev/test environments in AWS and initiate code deployment from Octopus Deploy.
- Project 2 (BUPA) : Operations Lead. Migrating COBOL from Unix to .NET. Development team lead. Developer support. DevOps support. Inter organisation coordinator. Migration analyst.
- Project 3 (Red Cross): Full-stack ASP.NET developer on the Red Cross Blood Service “Organ Match” project.
Skills
- C#
- ASP.NET
- Visual Studio Team Services (VSTS)
- Visual Studio
- Angular 5
- .NET 4.6
- NUnit/Moq
- Micro Focus Visual COBOL
- Amazon Web Services (AWS) EC2 & CloudFormation
- Octopus Deploy
- TeamCity
Senior Software Developer (Web front-end)
Senior Software Developer
Software Developer
Software Developer
Software Developer
Data Management Consultant
Software Developer
Software Developer
Software Developer
Software Developer
Technical Skills
These are the technologies I prefer to work with (and currently active in).
- .NET (Framework 4.x & .NET 8)
- C#
- HTML
- CSS / SCSS
- Vue.js (mostly v2, and a bit of v3)
- SQL Server / SQL (I write SQL by hand)
- Azure - Managed Azure SQL and App Services
- WPF (Windows desktop app)
In my day job I also work with:
- MongoDB
- TypeScript
- React (v18)
- GraphQL
- ExtJS 4.2
The technologies I will work with is I must:
- TypeScript (it has it's place in the world, but I'm a vanilla JS person)
- GraphQL (the tooling is a nightmare)
- AWS (Documentation is rubbish)
The technologies I will NOT work with:
-
React [as an individual contributor].
Why?
a) I struggle with it's rendering the mental model. Coming from an ASP and VueJS background, React is too foreign for me.
b) It's way too verbose and requires too much glue work.
c) It's yet another framework that keeps changing and we spend half our life chasing the next new evolution.