And that’s it! We’re now at the end of 2019 which also means it’s the end of the decade too. These past 10 years have gone by in a flash, at the start of the decade I started high school, now at the end of it I finished my degree at Monash University. So here’s a look back across 2019.
A Look back on 2019 – a year of achievement
I know that in my review from last year I talked about how fast it has gone by, this year felt more fast paced then ever before. But this year, after coming back from a long well-deserved holiday, I felt that I have achieved more than ever.
Towards the end of last year, we released MonPlan as the university’s official enterprise course planning software. At the start of this year, we integrated into the enrolment processes for VTAC round offers – this was the first test of MonPlan with over 7000 users using our sites within the first few minutes of the offers going out. We also rolled out to South Africa and Malaysia in the later part of the year.
Towards May/June 2019, I made a tough decision to hand over a lot of the maintenance and development of MonPlan to the rest of the team, as I was beginning to field offers from external companies. I made this decision as it made me knowing full well that MonPlan was in good hands when I left.
Something that really surprised me was that I was announced as a finalist of the itNews Benchmark awards – the awards night was hosted at KPMG Barangaroo in Sydney. Surprisingly I took the award jointly with the other finalist Fiona Sparks of Victoria’s Department of Health and Human Services (DHHS).
In November 2019, I said goodbye to Monash eSolutions as I had taken up an offer with Google, where I will be starting as a Test Engineer mid-February next year. You can read more about my reflection of my time at eSolutions here. The interviews were pretty hectic, overall I did 5 interviews (1 initial phone call and 4 ‘on-site’ interviews), with a lot of practice on LeetCode (at least 3-4 problems per day, for 3 weeks up to the interviews).
A few weeks ago, I also wrapped up my degree at Monash. Which means I am graduating next May (let me know if you want to come) !
Something that I am always passionate about is giving back to the community.
At the start of this I was elected Graduate Representative of WIRED. Some of the major events that I organised included TechFest and Bit By Bit Hackathon.
These events were really enjoyed by the students, hopefully will continue over the coming years.
Overall, this year has been the fastest and most hectic its ever been, with the end of the decade coming up, I feel like I have accomplished a lot this year. And hope that next year is even better.
A big thanks to my friends and family for being there for me for the past couple of years, and I know that moving away from Melbourne is going to be sad but I will always come back and visit. You know who you are.
To be honest, I don’t really like saying goodbyes and usually hope I can just disappear quietly. Yet, at the same time I realise that I have to do this otherwise I’ll probably regret it in a couple of months. So I’m writing this to reflect my time at Monash and what I have learnt along this journey.
In case you didn’t know, I’ve decided to take an offer with Google as a Test Engineer in Taiwan, and will begin next January.
I started back at Monash back in December 2016 to work on the first alpha of MonPlan (wow, that was a long time ago) after I first received an email from one of the directors asking about interest in building MonPlan with eSolutions. This was when I was transferring courses, and that there was no way to talk to course advisors, so my plan was to use a Google Sheet to plan out the rest of my course. Having worked on MARIE.js the prior semester, I had the idea of making it a web application. After having talk to many of my friends, Josh Nelsson-Smith and I decided to start working on it. That following day we did a post on social media asking if other students was interested in using an app like it. Surprisingly, we got some really postitive feedback. For those who don’t know, MonPlan is currently the official Monash University Course Planning Tool for students, by students.
Back then, like many other students I thought eSolutions was just a couple of ‘old dudes’ sitting in a cupboard working on some old servers and the second thought that crossed my mind was that the email was potentially fake. Yet Josh Nelsson-Smith and I decided to seize on the opportunity to deliver MonPlan.
And it was over the course of the 2 or 3 years that we worked on the development of MonPlan and FutureYou and working with different portfolios across the university to deliver both products. We hit major milestones along the way, we developed and built the concept of a product which helped connect your inspirations and what you’ve enjoyed to careers, and careers to courses, this was then pitched to several directors at central marketing (SMC). We then hit Beta with MonPlan in Feburary 2018.
Lesson 1: Never give up.
Sometime along the way, I couldn’t see when MonPlan was going to be released, and was thinking about leaving the project. But then after talking to a few of my friends, I remembered why I started this project in the first place and that was to make every student’s lives easier. And so I picked myself back up and soldiered on.
Not many people know this, but back in late-2017 – MonPlan was competing with a vendor-built product, and that the project almost got shut down because of this. Over the course of a few months, and putting MonPlan through beta release and proving that both the faculty and students love our product, made us got chosen as the University’s official course planning tool.
Lesson 2: Look after yourself
Something really important is that your mental health is really important. Being a hard worker I didn’t take any holidays, I was studying 4 units in addition to ~20 hours a week at work and during the holidays I was working full time, and this continued on for around 2 years and one day in 2018 I had a mental breakdown/panic attack. That is when I decided to take a holiday the following semester break, (it turned out to be 7 weeks, and I went to both Japan and China!!!), and I came back fresh and felt like I was ready to kick some amazing goals the following year. So yeah, have a healthy and balanced life-style is really important too!
I also picked up a new hobby which is photography, so outside of work hours I spending less time coding (and working 😅), instead I spend quite a bit of time editing and taking photos.
Lesson 3: Believing in yourself
Always believe in yourself, this is connected to the ties first and second lesson(s) really well. This has actually happened to me many times throughout my time here at Monash.
The first time, was right after MonPlan’s Beta release in February 2019, I didn’t know if we were going to make it. Especially as we were competing with a vendor-product. But the design philosophies of user-centered design (putting the student first) in addition to the hard work of everyone in our team allowed us to be chosen as the University’s official enterprise course planning tool.
Even when applying at Google, I just didn’t know I will get the offer. Even when I did get the offer I was shocked, I was still like ‘how did I even get this?’. But almost all my friends was not surprised I got the offer.
Lesson 4: Organise yourself.
Something that I was forced to learn was that I hard to organise my day, so in order to that, I synced up my personal, uni calendars under my work calendar. In addition I created a Custom Calendar to that I add classes into my calendar too (inviting both my staff and student accounts), also adjusting my out-of-work hours in my calendar settings too.
Every morning, either when I get into uni or work, the first thing I do is look at my calendar – working out my daily meetings, classes, and planning out the work I was going to do for that day. The meetings I accept are typically placed a minimum of 3 days ahead, otherwise I’ll just reject it, this allows me to keep my calendar neat and tidy in addition to allow me to take control of my time back.
MonPlan had a startup feel to it, we had to continuously iterate through many versions (as part of the University’s SAFe practices), in addition to hiring other students who had the same vision as us. We hired based on cultural fit in addition to technical skills, those who had better technical skills weren’t necessarily a better fit to the team.
And in October 2018, we officially released MonPlan as the official enterprise student course planning software to the entire university – the road to this release was long and not entirely smooth, a big thanks to everyone who was part of MonPlan and FutureYou, as well as to the managers, business partners, and everyone who helped us deliver MonPlan.
To all the Monash staff, students, friends, family and especially the Monash Community that I have interacted over my time at Monash, from the depth of my heart, I want to say thank you for all the joys, experience, lunches and snack-runs and just literally being there for me for the past 3 years. It’s been amazing and I really really really enjoyed contributing to the University life, and would love to come back in the future.
That’s all from me, once again thank you!
P.S. Do let me know if you are around and willing to grab a coffee (or bubble tea) – my emails and social DMs are always open.
MonPlan will be placed in Operational Mode as of 1st April – meaning that all the major bugs/issues have been resolved.
Signed a new contract with Monash Uni, and as of 1st April – I’ve been promoted from a Junior Software Engineer into a Software Engineer!
I’ve been elected the Graduate Representative of Wired Monash, which is the IT Student Club at Monash.
Interviewing with Google
My plans after uni isn’t that amazing, I’ve applied for a few roles across some really big tech companies – Google (Sydney & Taiwan), Atlassian (Sydney) and REA Group (Melbourne). Though if I don’t get any of these roles, I’ll be applying for a mid level roles later this year. So yeah, I’d applied for this role (Test Engineering) back in January, and the main reason why I applied for this role that’s going to be located in Taiwan, is not only because I love doing DevOps/SRE, I also wanted to travel a bit more (especially back to Japan – 🤣)
Yep, that’s right despite my not so good grades/GPA, I’ve managed to snag a video interview with Google. The interview went fairly well, I did a lot of Hackerrankquestions before the interview. But for those who are looking for a test engineering role – the questions were straightforward, having a knowledge for general data structures, SRE/DevOps/SysAdmin strategies and complexity will be very beneficial.
We all know that making apps is hard, but making the app easier to use is even harder — especially when you are working on it everyday it’s hard to gauge whether or not something is more easier to use. But, throughout the lifecycle of MonPlan, we have iteratively improved the design of our app to make it easier to use and look more ‘pretty’ to the eye.
More consistent design — similar looks have similar meanings.
This is quite straightforward, making your design more consistent throughout the app by following design principles. But components within the apps should have the same meaning.
Within our older unit cards, no-one understood what the colours meant, the full greyed out stated meant that a unit error has been breached. With the newer changes we broke the card down into 3 sections:
Faculty (Coded with 3–4 letters) with it’s faculty colour,
the main body describing the most important info: Unit Code, Unit Name and the amount of credit points
And the new action menu which is a dropdown — triggered by the extra icon. Allowed us to add making it easier to drag-n-drop the card or allowing select-n-drop in mobile. By also moving our delete, view unit information and move units, we not managed to make it mobile friendly, but also ensuring that we met WCAG AA 2.1 Accessibility Standards. It also meant that we prevent some dangerous actions too — at least we can prevent errors.
We also applied this principle to our teaching periods after successfully testing the card principle out there in the wild, the change was made around mid-2018. This also gave us the ability to add more user actions to the teaching periods such as marking periods as intermissions or going on exchange.
By moving key actions into a dropdown, we firstly can prevent users from making ‘dangerous’ actions, such as overloading, removing the teaching period and other key actions, but also make it more mobile accessible.
Displaying what is necessary to the user
Something that recently that has been worked on is the validation modal.
The problem here is that how do we are making it easier for the user to understand what rules they have breached and how to resolve it. We are also presenting unnecessary information to the user, but also making it hard to understand.
When the user first looks at this modal — they are bombarded with information, and there’s no summary.
First, lets do the following things:
Add a summary box, that describes what rules are we comparing against
Remove the expansion panels (as expansion panels within expansion panels is not as ‘clean’ and also makes it hard to understand what is going on.
Hide all the rules which have passed inside the details section as it is ‘unnecessary’ information.
So lets break up the details even further…we’ll break down the unit rules into different ‘cards’, which makes the grouping even cleaner and also change the language so that it’s more positive so from ‘Errors’ into ‘Requirements’.
So we’ve added back the expansion panels as the user can choose to read them or not, they can expand and hide as their wish.
We eventually moved away from the ‘Paper’ design to group the errors, into a singular box, with a dashed border to help group the elements.
Throughout the iterative release cycle, we have built up various concepts and tried and tested out concepts in the wild under user testing sessions. And remember to keep your users first, without your users your application will go nowhere.
It’s a great honour and privilege to win the 2019 itnews #BenchmarkAwards – Rising Star Category along side Fiona Sparks (Go Victoria!)
Firstly, a big thanks to Josh Nelsson-Smith who started out this project (originally as an Open Source Project) with me – without your initial help and your awesome development and management skills, we wouldn’t have transformed the student experience. Also a thanks to all the other students who worked on this project: Saurabh Joshi, Charles Campton, Robert Koch, David Copley, Harry Ferrier, Ben Clare, Isabel Sprengers, David Lei, Callistus Tan, Katie Ng, Nicholas Whittaker, Mansi Vyas, Hyun Shim, Rebecca Young and Benjamin Yap – you guys are awesome!
Special thanks to Teresa Finlayson, Trevor Woods for really transforming and supporting Student Innovation at Monash University, and thanks to Edwina Harvison for supporting this project through the Student First Program.
Another big thanks goes out to the mentors and managers who without the help of we wouldn’t have made it this far: Linh Truong, Chau Lam and William Harvey.
That was quick! 2018 went by in a breeze and we’re here with a new year. For me this year, it was about making a difference to the community.
Firstly, a big thank you to everyone (friends, family, co-workers) who have supported me throughout this year. And all the best for 2019!
As many of you know, MonPlan this year has been bigger than ever. In February, we launched MonPlan into beta – which is one of our biggest launches ever. The university adopted our product as the official course planning tool shortly afterwards. And just recently in October, we officially released MonPlan – a big thank you goes out to everyone who has supported us all the way through the journey.
Firstly I would like to thank Josh Nelsson-Smith who co-founded this awesome project with me, having working with him for the best part of 2 years, having supporting me when I was feeling not that great and learning a great many things with me was really amazing.
Another amazing person that I would like to thank is Saurabh Joshi, Saurabh is a really amazing person who is really great at what he does, but without his initial help at the start of the project MonPlan wouldn’t be where it is at.
All the awesome team members that we had: Charlie Campton-Strachan, David Copley, Robert Koch, Harry Ferrier, David Lei, Callistus Tan, Katie Ng, Nicholas Whittaker, Rebecca Young and Ben Clare: you guys really helped us get over the finish line, even though our team shrank in size and grew many times – but without the effort from you guys we wouldn’t be where we are.
All the staff, managers and senior executives at eSolutions (such as Linh Truong, Chau Lam, Teresa Finlayson)
Lastly, all the friends who have supported me: Emily Dao, Michael Williams and Nick Priebatsch. I know that I’ve thanked you already, but without you guys being there for me and listening to me ramble about random stuff, I wouldn’t have been able to get most of the stress out.
For me, this year I’ve participated across two hacks: Hackamon and UniHack. I mentored at this years Hackamon instead of competing, helping others grow ideas, giving them tips on pitching is something that is really enjoyable and seeing an idea grow into a solution is what makes the entire experience worthwhile. As well as giving out two Tech talks on Git and rapid prototyping.
This year, I’ve picked up photography as a hobby – around September I brought a new Canon 800D DSLR. And have slowly taking photos and learnt how to process them through Photoshop. Check out some of my best photos here
I know that I told myself that I would travel last year in 2017 but then it got busy.
This year I ended up going to both Japan (with friends) and China (solo) for around 5 weeks: which has been really fun. Big thanks to everyone who have travelled with me and made the experience more enjoyable. I really want to head back to Japan at some point in the future – maybe to the northern part (like Hokkaido) next time.
I am really looking forward to 2019 – with new ideas (and with it, startup opportunities), looking for grad/junior/entry level positions and finishing off my degree part-time, new hobbies and friends, potentially more travelling – I’m sure it will be an awesome year.
‘Don’t only just study, go out explore and make the world a better place’
I’ve also taken the position that University is not only about studying, it’s also about how you learn and make a contribution to society. So why not start early? I’ve previously written an article about this, check it out here
But this is not always about tech. Yes it is true, we currently live in a digital world, there’s always ways to make a difference to the world.
These examples may seem too ambitious, I know a lot of problems exist in the world, but there aren’t any solutions. Some other examples include:
Monash University’s Timetable Allocation Swaps was done manually through in-person swaps then contacting Student Enrolments, etc…..(this was a very tedious approach). So a bunch of guys (Ishan Joshi, Surayez Rahman and Arni Mittal) got together during a Hackathon, built a demo. Over the later half of 2017 they worked with parts of the university (and Ben Clare joined the team) and this was launched as a pilot product during Semester 1 2018 — SwapMe
Even the two/three projects that I’ve built was around solving problems (they weren’t necessarily and still not part of my course): MonPlan was built to solve the problem where a student wants to figure out how their course should look like without have to go in to see a course adviser MARIE.js digitalise a old Java based application geckoDM was built to solve harder to download lectures over the echo360 platform, we have expanded from one university to users across 4 countries.
So, studying at university helps you to learn how you should study. Because you should never stop learning (I sort of tied that into Monash University’s motto — Ancora Imparo (or “I’m still learning”)
Let’s be honest. Starting your own app its hard, sometimes you don’t know how to even start. Here’s some tips to get you started on a project.
1. Just Do It
All projects have to start somewhere, sometimes you think about it, and sometimes you overthink it. Talk with you friends, express your ideas, let it out. (Don’t let it go). Whatever you do, just start it. Your friends will eventually hop on the train (that you build, figuratively) with you.
No matter which project, it is always difficult to start. It doesn’t matter if you fall, just get up and try again.
2. Don’t Avoid Criticism, Embrace It.
We always hate criticism, its just natural. Sometimes its great to have some criticism. (It actually tells you where you can change and improve).
Criticism, especially from you user community is the best, introducing new features and fixing the bugs shows to your users that you actually care about them, making them use it even more and perhaps even spread the word further.
Something that I found is the criticism no matter how bad, is actually good. Also good to target the extra-20% (using the 80–20 rule) and make your product better than ever before.
3. How to Build it.
At lot of project these days fail because of the sheer size of the stack. Don’t worry about that. Figure out the best way to ship your app, remember many of users nowadays will come from the mobile side, meaning the any data you send has to be small, (the app/website can always request for more data!). For example, a website can have a ReactJS (with Redux) front-end and then contacting your API server whenever it needs more data. So a Front-end plus a backend connection is a great idea for modern apps!
4. Promote it
It doesn’t matter how big your app grows if you don’t have the userbase, promote it to your friends, boss or other social media channels.
5. Look at Modern Technologies
Sometimes it is quite awesome to learn new tech especially working on a new project. And if you building SPWA (Single-paged webapps) it is great to look at newer frameworks such as: React.js , Angular, and even VueJS. Some good reading material to look at includes: