INTERNSHIP WITH IDA

My summer 2015 experience as a UX designer and developer at Government Digital Services

Summary

Last summer, I interned with Government Digital Services at IDA, where I wore many hats across multiple projects. I worked with the Product Development team to create a business grant application service that would benefit hundreds of local businesses.

I’ll be omitting specific details to comply with my non-disclosure agreement. Thanks for reading!

Duration
May 2015 - Aug 2015 (3 months)
People
IDA Government Digital Services Product Dev Team
Skills
UX, Frontend Web Development, Visual Design, Illustration
Tools
Sketch, Illustrator, Rails, React.js, Jade/SCSS, Jasmine (unit testing)
What I Learnt

My biggest takeaway was learning how people with different roles collaborated to strategize and build products in the industry. My team, consisting of designers, developers and product owners worked together to release a reliable service for Singaporean business owners.

In addition, I picked up many useful prototyping and development tools, such as Sketch and React.js.

The Project

Dashboard design

I collaborated with a team of 50 to build an upcoming service to streamline the business grant application process. I worked with the UX team to design the application, and later with the developer team to implement it.

To me, the biggest challenge was integrating the newest designs and code while new changes were pushed every day. Our pull requests were carefully reviewed at all times.

Product Design

It was the first time IDA took a serious stance on user experience, and I was proud to be part of the emerging UX team. Together, we iterated on prototypes, discussed usability improvements and successfully established a brand and design direction.

Evaluating Wireframes

When I joined, the UX team was in the middle of finalizing low fidelity wireframes. I worked closely with UX Designers to evaluate their usability, and revise them on Balsamiq.

High fidelity Prototyping

We made high fidelity mockups using Sketch. We printed different design options for the team to vote on, and using sticky notes we gathered feedback.

This proved to be a quick and effective method for gathering design feedback. It allowed us to tweak designs fast and iterate quickly.

User Testing

Once we finalized our designs internally, we observed potential users using the application in our UX testing room, and tweaked our designs based on their feedback.

Development

Later, I joined developers to write production-ready code.

  • We adopted the agile process (particularly the scrum methodology) to drive development.
  • We used HTML, SCSS and a modern component-based framework React.js on Rails.
  • To test the application, we wrote unit tests with Jasmine and employed Selenium for automated UI testing.
One of my proudest moments was implementing major components of the app.

Documentation

I noticed two issues:

  • Development tools had to be updated constantly. For example, in order for the newest version of the code to work, a new library had to be installed. However, this information was relayed via team chat and sometimes easily missed.

  • We also had several new developers join the team, and I noticed that an existing developer had to drop whatever they were doing to help the new member set things up.

To alleviate this, I took the initiative to start developer's documentation for the repository. I wrote the setup instructions, notes on the project structure and a guide on how to deploy the application.


Documentation was written in a readme.md file on Mou.

Our new developers personally thanked me for writing it, and commented that it helped them familiarize themselves with our project. I felt proud to have helped ease their transition into the team.

Badge Designs

The team next door, who are developers of the SGBioAtlas app for citizens to share biodiversity sightings, requested some badge designs featuring native flora and fauna. While taking a break from development, I drew and designed badges for their app :-)

Fun Things!

I was also in charge of making a Gratitude Box and designing Gratitude Cards for my team. It was an anonymous thanking system for anyone who did something good or kind for another team member. Peer recognition led to a happier work environment :-)

I made a friend from another team who also liked to draw. We decorated the office with our drawings.

My Team

Last but not least, my awesome team! They deserve a special section here. My team genuinely appreciated my work and made me feel right at home. We hung out outside of work, had fun, and learnt a lot from each other. They kept me fed, too :-)

Not only was I given the opportunity to solve a challenging problem that impacted our local businesses, I also met talented, caring individuals who helped me grow. I look forward to seeing them again!