Employment pass solution for Singapore Government

The Work Pass Integrated System (WPIS) for the Ministry of Manpower, Singapore, replaced a decade-old, costly, and inefficient system with a robust, scalable, and user-friendly e-service platform. This transformation enhanced the overall user experience while reducing reliance on third-party intermediaries for Foreign Domestic Worker (FDW) employers.

To comply with my non-disclosure agreement, I have anonymized and excluded specific information deemed confidential in this case study. The views expressed are my own and do not reflect those of my former employer, ThoughtWorks, or the client.

Background

To modernize the employment pass application process, the Singapore Government aimed to build a fully digital platform that was secure, scalable, and efficient. This platform needed to handle thousands of applications daily while offering a seamless experience for diverse user groups. My role as the Lead UI Developer involved creating a front-end architecture using a progressive enhancement strategy to ensure accessibility and usability across various devices and browsers.

My role

As the Lead UI Developer within a large Agile team, I was responsible for designing and implementing the front-end solution. My key responsibilities included:

  • Leading front-end development with a progressive enhancement approach, ensuring compatibility across modern and legacy browsers.
  • Driving a style guide-based development process to maintain visual and functional consistency across all components.
  • Creating and refining low- and high-fidelity prototypes based on iterative user feedback.
  • Collaborating closely with Agile teams to deliver high-quality, user-focused solutions aligned with business and technical requirements.
  • Enhancing performance through responsive design, modular CSS frameworks, and lazy loading techniques.

Key features and solutions

This project centered on creating a scalable, user-friendly platform by leveraging modern front-end practices and ensuring accessibility, while everything was focused on addressing key pain points and continuously iterating design prototypes through feedback loops.

Snapshots from the iterative design process, showcasing user journey mapping, paper prototyping, usability testing, and feedback incorporation.

Progressive enhancement and balanced browser support

Ensured core functionality for older systems through progressive enhancement while delivering optimized and enhanced experiences for modern browsers. This approach included browser upgrade prompts, a legacy browser matrix, and regular testing to maintain compatibility and respect user needs across diverse devices and platforms.

/* Base styles for progressive enhancement */
@import "style_guide/base/colors";
@import "style_guide/base/breakpoints";
@import "style_guide/base/dimensions";

/* Layout fallback for legacy browsers */
.container {
  display: block; /* Ensures compatibility with older browsers */
  width: var(--container-width); /* Dynamic variable for layout width */
  margin: 0 auto; /* Center align for consistency */
}

/* Enhanced layout for modern browsers */
@supports (display: grid) {
  .container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(var(--min-column-width), 1fr));
    gap: var(--grid-gap);
  }
}

/* Responsive adjustments */
@media (max-width: var(--breakpoint-medium)) {
  .container {
    width: 100%;
    padding: var(--container-padding); /* Scalable padding */
  }
}

/* Progressive enhancement for modern interaction */
button {
  background: var(--primary-color);
  color: var(--text-light);
  border: none;
  padding: var(--button-padding);
  cursor: pointer;
}

@supports (filter: brightness(1.2)) {
  button:hover {
    filter: brightness(1.2); /* Subtle hover effect for supported browsers */
  }
}
Supported browser Modern Legacy
IE 9, 10, 11 7, 8
Chrome 39, 40, 41 -
Firefox 35, 36 31, 33, 34
Safari 7, 8 5, 6

Reusable components:

Developed a modular component library to streamline development and ensure consistency across the platform.

/* Atoms for buttons */
@import "style_guide/atoms/buttons";
@import "style_guide/atoms/links";

/* Components for form elements */
@import "style_guide/components/text_field";
@import "style_guide/components/checkbox";
@import "style_guide/components/radio_button";

Dynamic user flows:

Designed intuitive interfaces to guide users through complex application processes, minimizing errors and improving clarity.

<!-- Dynamic form flow with user feedback -->
<div class="form-step">
  <label for="user-name">Name</label>
  <input type="text" id="user-name" placeholder="Enter your name" required>
</div>
<script>
  document.querySelector('#user-name').addEventListener('input', function() {
    if (this.value.length > 0) {
      this.classList.add('valid-input');
    } else {
      this.classList.remove('valid-input');
    }
  });
</script>

Accessibility-focused design:

Adhered to WCAG standards, making the platform accessible to users of all abilities.

<!-- Accessible modal component -->
<div role="dialog" aria-labelledby="modal-title" aria-describedby="modal-description">
  <h2 id="modal-title">Confirmation</h2>
  <p id="modal-description">Your application has been submitted successfully.</p>
  <button aria-label="Close">Close</button>
</div>

Seamless integration:

Worked with backend teams to integrate over ten external systems, enabling smooth data flow and real-time updates.

// API integration example
fetch('/api/external-system')
  .then(response => response.json())
  .then(data => console.log('Data received:', data))
  .catch(error => console.error('Error:', error));

As a foundational step, I worked closely with Experience Designers to develop a comprehensive style guide that established a scalable front-end architecture. By adopting the Atomic Design Methodology, the style guide not only streamlined development but also served as a single source of truth, ensuring alignment and fostering a shared language across all team members and roles.
Evolution of the product, demonstrating how progressive enhancement enabled the team to build core functionalities and features in parallel. This approach ensured that the platform met the highest accessibility standards from the outset while allowing the overall look and feel to mature as the style guide evolved.

Outcomes

The launch of the Work Pass Integrated System (WPIS) achieved significant success, reflected in the following key performance indicators and achievements:

  • Efficiency: Reduced application processing time to under 3.5 minutes, even during peak hours.
  • Operational impact: Decreased call center inquiries by 30% due to enhanced self-help features.
  • Adoption: Increased self-help usage by 15%, showcasing a user-centric platform design.
  • Scalability: Successfully integrated with more than ten external systems, ensuring seamless data flow.
  • User satisfaction: Consistently rated above 5 out of 6 by users.
  • Recognition: Passed multiple code and security audits and won numerous awards within the ministry and government, including the Best UI and UX Design Award at the GovInsider Innovation Awards 2016.
  • Performance: Tested for up to 8 years of system load, ensuring long-term reliability.
  • High availability: Maintained continuous deployment with stable performance through peak operational periods.

Despite its success, the project faced several challenges, which were addressed with effective solutions:

Challenge Solution
Working with evolving government cloud infrastructure Collaborated with the IT team to stabilize infrastructure, ensuring reliable deployment pipelines
Meeting demanding delivery and quality targets Adhered to strict performance metrics (e.g., <5% defects in UAT, maintaining user ratings above 5)
Coexistence with legacy systems Implemented data synchronization through database links, web services, and flat files
Integration with other government agencies Built APIs and batch file processes for smooth inter-agency data exchange
Delivering against an evolving, lightly defined scope Applied Agile methodologies to iteratively refine and deliver high-priority features

"Rajveer has a holistic approach and delivers production-ready work of exceptional quality, which has been pivotal to our success. His dedication to mentoring others while maintaining high standards has significantly elevated the team overall." Shireen Banu · Senior Assistant Director, Ministry of Manpower