What the hell is Pizza Mogul?

Since my last post I’d just started working on Pizza Mogul for Domino’s. To answer the question above…Pizza Mogul is great concept by Domino’s Pizza Enterprises so that anyone in Australia can sign up, create your own pizzas (using Dominos Toppings), and sell them to earn Virtual Money (like BitCoins) known as Mogul Dough (pun intended). Mogul Dough can be cashed out into your own bank account! So you can earn a slice of the profit. It’s pretty rad, I recommend signing up…It’s Free and fun.

Working on this project was insane (in good way)! The sheer scale and size of the project was massive, by the time I had rolled on the project there were about 40 ThoughtWorkers still currently working on this thing…and many more who had come and gone. We had Teams in our ChengDu, Perth, Sydney and Brisbane Offices.

Assigning features to each of the TW Offices and the use of Microservices were allowed us to work productively and help the delivery of this product. Having that many ThoughtWorkers on a project is kind of unheard of…It opened up the opportunity to pair with lots of different people Devs, X.D.’s, QA’s, BA’s internally and also got to collaborate with Legal and Marketing Teams on the client side; meet a lot of people from ThoughtWorks on a global scale; challenged me to learn a whole suit of tools AngularJS, KnockoutJS, SCSS, Git Command Line, Bourbon Neat; It was a great project to learn how to write tests (TDD), learn Design Principles, Agile Delivery, Stakeholder Management and Consultancy skills. I can imagine the integration would have been challenging to say the least, I myself can’t fathom what that would have been like.

I mainly worked as part of the design team heavily involved with the Front-end development using AngularJS and SCSS, there was also a big responsibility for maintaining accessibility. We used CodeSniffer a great tool for helping with maintaining this and also writing end-to-end tests for accessibility for our views. It really brought my attention to the importance of this and I realised that I need to apply this to my projects. The cross-browser and cross device testing was pretty damn thorough, I recall feelings of frustration related to IE, Firefox, and devices that run on Android 4.2.2.

Developer with lots of Devices
Cross Device Testing+++
My Desk at Dominos, lots of Screens
My workspace….Got Screens?!

A highlight in this project was when I presented my first interactive draft of the treaded tax questions page and charity workflow on an iPhone to the marketing team. Tax questions aren’t sexy and trying to make the process as painless as possible was a really big challenge given the legal implications that had to be made explicit to the user.

The marketing team were excited to see this and were impressed with the animations, overall flow and solution. One of the marketing team members even went so far to mention that he wanted to show the CEO of Dominos! I was chuffed! I remember thinking to myself…If I can make tax questions bearable then my job is done!

Don’t get me wrong there were many days when I felt out of my depth, pressured and stressed. To keep my sanity on those days I asked myself if anyone had died because the build had broken, or something that was meant to be simple to implement wasn’t. Somedays you felt like say “Hey we’re not curing cancer here, so take a chill pill.”

Overall, it was an intense learning experience and due to the length of the project I am now able to draw on those experiences good and bad to help me make decisions on future projects. Since leaving the project, I’ve become an Angular JS and SCSS addict, Mobile First Design fan boy, more confident with Git Command Line although I still love BitBucket’s SourceTree App.

Advertisements

Life After TWU: No rest for the wicked

How time flies. It’s been that long since I left India that another TWU batch have already gone through the same process! You read correctly…TWU 36 has already finished their time in India. I can’t wait to meet some the recruits. I arrived back in Brisbane on a Sunday night only to start work the next day. I was un-assigned for time being unsure about what was next for me. That Friday I got told that I would be on a project in Sydney! I was excited, nervous and a bit sad all at the same time. I was excited about the opportunity that was lying ahead, scared shitless about the opportunity…am I ready to be on a real project. I was sad that I would have to leave Brisbane again for a number of weeks, I had only just come back from India after 5 weeks only to tell my dear wife that I would be absent again for another 6.

I arrived in Sydney a bit jet lagged (you lose an hour due to day light savings), to meet with senior dev, my dev pair and the client. We basically had a discussion around what we were going to deliver by the end of six weeks. We had 4 epic stories, most of which I had no idea what this entailed. We broke down these 4 stories in smaller cards on a wall.
Looking at this wall of work made me feel sick. I didn’t have a clue how I was going to do this…we basically had to extend an existing web app to become a social recruiting tool similar to LinkedIn. Next we spent the next 2 weeks or so digging through the current tech stack. The tech stack involved a backend Salesforce, a local database, this would talk to Java Controllers then on the front end would be viewed as Backbone.js tempates combined soy templates using the Twitter Bootstrap framework. To my surprise this was a very similar tech stack to the project simulation that I had worked on in India for TWU.
I was able to draw on some knowledge that I had learned in TWU, even reuse some code. So I started with what I knew making designing new pagees/views on the front end and designing these features. I had a lot of control over this which as great but always asking my dev pair and client for feedback. There was a lot of trust within the team which really made the project fun. Don’t get me wrong I asked a lot of stupid questions to my dev pair, I felt sorry for her some days as I felt that sometimes I was a slowing us down. But this was not the case, the more I asked the more I learned, and as a result knowledge then shared across the team. This is really important, as it could slow down the productivity if one of us got sick then the project would be at halt. Before we knew it, time was creeping up on us, but we managed to deliver what we set out to build six weeks before.

The beauty of having only 2 devs, was that we could work on different parts of the project to avoid merge code conflicts when pushing to the main repository. We ended up pushing to prod the last day just before easter, half an hour before I had to leave for the airport. I was so proud that we pulled it off, sure there could be some improvements but the web app had significantly improved because of what we achieved.

It was a great sign, when the client asked for more features. Unfortunately, I was due to join another project. I spent the last day of the project working remotely in Brisbane to fix bugs and also documentation. The next day I was due to start on a new project to my wife’s relief in Brisbane. I’m now part of the design team working on a super secret project for Dominos Pizza. All I can say is that I’m learning a heap from talent team at ThoughtWorks about big projects, deadlines, SCSS and Angular JS.

Life at TWU: AW35OME

TWU Batch 35 at the Taj Mahal
Spending our free weekend in India at Taj Mahal

Since my last post it’s been a crazy ride. I was exposed to the world of TWU101 Training which exposed me to JAVA, TDD, and comprehending a lot of Social and Economic Justice Concepts such as Imperialism. I was so stressed trying to grasp these concepts by myself at home. I emailed my mentor who kindly helped me out with Java and TDD on a weekend day for 4 hours. My brain was absolutely fried. I was able to write some simple tests afterwards but learning TDD and Java at the same time is a challenge to say the least. I felt more comfortable as the course went on as it involved more Javascript, also learning basic SQL took me back to high school which was fun. As TW graduates in Brisbane we spent most of our time working on course work, at a client site. This made it awkward asking for help at times since our mentors were busy working and from a client perspective we didn’t want be distracting our mentors from their work. But I was glad I could ask for help when I needed it as the alternative is sitting in an empty as everyone is on a client site.

After the initial TW101 course, it was off to Sydney for induction for three days (sometimes called on boarding). The accommodation was quite close to the office and very nice. This was a great experience, I finally was face to face with people who interviewed me, other grads who were all on the same boat and my recruiter who I had only had online contact with. We went through the orientation of the company and the people presenting on different topics (sales, marketing, finance, recruiting, info-sec) were all to eager to answer questions for us all. It was our first exposure to Timesheets, Expenses, and other day-to-day inner workings of being a consultant at ThoughtWorks.
The things that surprised me, were that I was able to help others when starting out…I was able to guide people through a Mac, passing on my learnings of encrypting a Mac and show others some cool apps that are useful from the Mac Store. Being in Sydney also allowed the opportunity to meet grads from the previous batches and pick their brains about TWU in India. At the time it was also my wife’s birthday so she flew down and we had dinner at the Sydney Opera House, it was great to celebrate with her.

So on the third day we left for India, it was a long 24 hours of travelling. For the most part it was quite pleasant, the most unpleasant experience was waiting in Mumbai for 6 hours, boarding the plane then sitting there for an hour, to realise that the flight would only take 20 mins. It was kind of hilarious, watching the other grads fall asleep only to be woken up a few minutes later as we had landed. I got to know more about the other grads, sometimes exposing my insecurities about attending TWU. But I was rest assured that we were all learning and in the same boat which made me feel a whole lot better.

After all the travelling was over and we finally made it to Pune (Poona), I spent the night catching up on sleep. The first people I met were from the North America Region. To my surprise I met a great guy who made the change from finishing Grad School in Medical Research who also spent sometime in Med School. This was refreshing and we talked about having our own startups one day and also contributing to Health Projects such as OpenMRS a Medical Records System that is Open Source. I could go on about each an every person that I had the pleasure of meeting and collaborating with, but this blog would end up so long. But my point here is that I met many different people from all walks of life (North America, Canada, Brazil, China, Africa, Europe and UK regions), people who not necessarily studied computer science, people from all sorts of backgrounds. The traits we had in common that brought us together were that each of us are passionate, hard working and open to learning new things.
It was refreshing to see that we all got along so well, a testament to ThoughtWorks’ recruiting processes.

The ThoughtWorks University Batch 35 Logo
Our TWU Batch 35 Logo

We were then given assignments that touched on each of the 3 pillars of ThoughtWorks. Balancing project simulation (which was the majority of the time spent), Pillar 3 assignments along with Pecha Kuchas was a task and half to say the least. I learned so much from other fellow grads who took the time to proactively teach us all sorts of technical and non-technical concepts at lunch and learns. After these “lunch and learns”, I wasn’t so hesitant to try new technical things (in nursing Lunch and Learn concept is very similar to the “See one – Do one – Teach one concept”). I only wish I had the smarts and time management skills to organise one myself. Still feeling like a fish out of water now, I guess I wouldn’t know what to teach and L&L sessions.

As a TWU attendee you are living, working and hanging out with everyone… this constant contact with all these amazing people makes it difficult not to get attached. Nothing can prepare you for ThoughtWorks University, you just have to take it as it comes and go with the flow. Asking for help and seeking clarification is one the most important things I learnt that I needed to do. TWU is an experience unlike any other, I’m so glad to have been a part of it. For those of you in the pipeline for ThoughtWorks University, my advice is absorb as much as you can by asking lots of silly questions, ask for help and have fun.

Thank you 2013! What a year it has been.

I’m posting this to reflect on the year that was 2013. So much has happened this year. I kicked this year off at the New Years Eve Ball in Brisbane, dressing up as the Justice League. I bet you can guess who I went as…
Keep Calm because I'M BATMAN

Wedding preparations were never ending. Motivation would come in waves, some weeks were spent head down bum up and others were spend enjoying the fruits of our labour.

I married an amazing woman, my wonder woman. Our wedding was the best weekend of my life (and apparently my wife’s friend Bridie, who awkwardly told us it was the best day of her life…kind of a running joke in our circle of friends). It was absolutely perfect! The weather was amazing, the food was delicious and the company was first class. Surrounded by family and friends who travelled near and far to celebrate with us. I’ll never forget what an incredible weekend it was. My wife spoils me undeservingly, she puts others first before herself. A side effect of being a nurse. Her generosity is only outweighed by her beauty. I am so lucky to have her as my wife.

The greatest weekend of my life.

She supported my decision to resign from Cardiac Rehabilitation (2 weeks before our wedding). Believing that I would be able to follow my dreams of changing careers into the Web Development space in the I.T. industry. I cannot thank her enough for that.

meandalicia

I still worked at the hospital in the Coronary Care Unit. It’s such a great family that I have there. I’ve worked with these people for 5 years, I have learnt so much from them. Not just from a cardiac perspective but life lessons of generosity, loyalty, ambivalence and accountability. I finished my last shift yesterday with a bang. It was so busy and hectic. It reminds me how challenging this job can be and the type of people who willing to take on this challenge. I’ve made life long friends there.

Now I start my journey in 2014, in totally new space. I’ll be attending ThoughtWorks University in Pune, India at the end of January. I cannot believe I got in…you can read a more detailed version here.
It had been 13 weeks since I resigned when I got the call on the way to visit the in laws with our new addition to the family…Bruce, our puppy pug. I had just finished a long wind of interviews from ThoughtWorks, that stretched over a few weeks while picking up extra shifts at the hospital. It was such an experience, it almost felt like I was joining Google. It was intense, challenging and a lot of fun.

brucey
I was in the car trying to keep our hyperactive puppy under control when I was offered a position as a Graduate Developer. I huge wave of relief and excitement had washed over me (and my wife who was driving at the time). I did it! I thought to myself.
Then I started to feel excited! I got in! I told myself. Then I started to feel scared…What have I gotten myself into? Am I good enough to do this? The realisation of what I had achieved had turned into a feeling of low self worth. This stemmed from knowing I did not have any formal qualification and more so experience working in this space. I still feel like that now, I feel like I have to prove a lot more, and work a lot harder because of the lack of experience I have. But I’m going to take it on with my head down and bum up…as they say “Nothing is worth doing unless it is hard work”.

I’m working my way through ThoughtWorks assignments that they have sent me. But today I’m going to take it all in and celebrate what a great year 2013 has been, thank you Universe. Bring on 2014!

2014

Hour of Code: Do it!

This will be a quick one. To those of you who don’t know me. I’ve just been accepted into ThoughtWorks an Agile Software Consultancy Company. I start January 2014. What might surprise you is that I never went to University. Well that’s a lie I went to University and have a degree in Nursing. I’ve been a Cardiac Nurse for most of my career with humble beginnings in Gastroenterology. I was driven to learn how to code, to solve a problem while working as a co-coordinator of the Chermside Cardiac Rehabilitation unit in Brisbane. I wanted to cut down assessment time because there was sooo much paper work. One of the contributing factors was how long it took to conduct a 6 minute walk test. Sounds like it takes 6 minutes, but after recovery of the client, explanation of the test, explanation of results, calculating formulas and then having to document the results in 5 different places. It turned into a nightmare. I was so fascinated with this small problem, I decided to tackle it myself in my own spare time. I taught myself how to code and found other people who helped me learn. It started when I was introduced to CodeAcademy…it was the Year of Code…I taught myself HTML, CSS, Javascript (I’m still learning and have a long way to go yet) and managed to build an app that I wrapped in PhoneGap. My app is now downloaded all over world and although I’m not making millions. I still find it so rewarding to see people use my app and continue to improve it. I love coding so much that I resigned from my Cardiac Rehab Job (my last day was two weeks before my wedding) and decided to take my novice Web Dev skills to the next level. After blood sweat and tears I now have a portfolio I’m proud of (that I will continue to grow) and can happily say that I will be a Graduate User Interface Developer at ThoughtWorks. The point is if a Nurse from Brisbane can teach himself how to code and change his career to Web Development without a University Degree. I’m sure you can too. I’m very excited to be part of the “Hour of Code” movement. I hope to gain more experience at ThoughtWorks and one day build more robust software to tackle bigger problems in the Health Care Industry.

I got into ThoughtWorks!

HOLY CRAP! I GOT IN! Since the the last blog post I had just handed in my solution for the technical UI problem. I then progressed to a Skype Interview with a Front-end developer (Adam) via Skype. After Adam had spoken to my recruiter Sam, I was then asked to progress to the Cultural Interview via Skype again with Emma and Cassie. This was an interesting one, I had essentially no preparation other than reading about agile, thinking about the parallels of working as a nurse and transferrable skills I could bring to ThoughtWorks, and studying the ThoughtWorks website back to front for a few days. The feedback I got was good, but something that was pointed out to me, that I have to understand is that I need to stick to project even if I don’t like it (which is fair enough, there are things we do as nurses that most people wouldn’t do, so I’m up for that). I guess I answered this as a nurse and not a ThoughtWorker. I gave the example of a patient who needed to quit smoking, but had no intention of quitting, I would give them the an informed choice…but leave it up to the patient if they continued smoking. After all, you can bring a horse to water, but you can’t make it drink. I guess it was the wrong analogy to use, when answering those types of questions. I was then was asked to finish the remainder of the interview process in the Brisbane office. This involved sitting for a Logic test (I had never done a logic test in my life!), once I got into it, it was actually a lot of fun. I didn’t answer all the questions, but I was pretty confident that the ones I did answer I answered correctly. Then came the Consultancy exercise, with two other ThoughtWorkers who basically ran a role playing exercise. They asked me to build something that could fly, one consultant was adamant that the object must WIN, and the other as set on it being PRETTY. I proceeded to make several paper aeroplanes and got them to test it out. I guess I’m more pragmatic when it comes to things like this, I worry about the functionality of something before how it looks. So trying to please both “stakeholders” was intense, I really do like the role playing it’s a great way to learn. I was then asked questions about my workflow, you know, why I did the things I did. I’ve never been asked that, it’s quite refreshing to have been asked how I think. After that was done, I was asked to present on something I was passionate about. I had prepared a prezi (which can be viewed here) on Heart Health. I am still passionate about it, especially since my last job entailed telling people AFTER they had their heart problem and NOT BEFORE. So it was refreshing to present this to an audience (2 recruiters, 1 via Skype) who essentially had no experience with Heart Disease. After I presented I was then asked about the 6 minute walk test App that I developed and how it fit into the Heart Health. I showed them a demo which I had only built a week ago. The feedback I got from the presentation was good too, but there were a few things that I was told to improve. Firstly, I was told that the information presented was interesting, but I needed to express what the objective of the presentation was not obvious. My objective was to provide information to an audience so they had some idea on how to prevent a heart attack. Secondly, it went a bit long…I did notice that the presentation took longer than practiced at home. But, I didn’t expect to have present my 6mwt App as well. In hind site, I should have just presented how the 6mwt App worked and why I developed it. The last item on the agenda that day, was a 12 minute aptitude test, there were 50 questions…i think I got through about 30ish questions. So that was my morning at at ThoughtWorks Brisbane on Wednesday 13th November. I got a phone call on my way to Straddie, for a family trip with my wife and new puppy pug “Bruce” to offer me a place in the ThoughtWorks Grad Program! I was beside myself, and still am. The next challenge is now about staying ahead of the game. I feel that I have a lot to prepare for now that I am in. I really want to do well in ThoughtWorks University in India. If anyone has any advice or resources to help me prepare to do well in ThoughtWorks please comment.

Next Stage ThoughtWorks! Technical Interview

Today has been awesome…to reveal how awesome it is I have to go back to Friday. Friday I was having lunch with my wife and her friend as she just got a new promotion! Then I get a phone call from ThoughtWorks who I haven’t heard in a while, that they would send me a UI problem. I received the problem in the form of a PDF, and out of respect to ThoughtWorks I won’t be posting the UI problem PDF on this post. But my solution is in the video…I am so proud that I was able to produce a solution with nothing but my own experience and other resources such as google, stackoverflow, js fiddle, js bin. It was very exhilarating being stuck to the screen this weekend and focusing on this project. Especially when I was happy enough with my solution, to zip it up and send it to ThoughWorks.