// Adds dimensions UUID, Author and Topic into GA4
Friday, July 10, 2026
31.1 C
Singapore

Ex-ISD boss breaks silence on Mas Selamat

Under his watch, Singapore’s worst security breach happened. Six years later, former ISD director Pang Kin Keong tells Challenge, a civil service magazine, what he and his officers went through. Excerpts:

“To have an incident of this national security magnitude happen under your leadership…that’s an awful feeling…I’ll be honest. When I read the newspapers or my email (I felt) like slumping and going back to bed, under the covers.

“This difficulty of keeping up the morale intensified over time…After eight, nine months, and we still have absolutely no trace of him, how do you keep on telling them (his staff),  ‘it’s okay. You need to keep plugging away.’

“I wanted at least to be able to say, yes, the mistake happened under me, but I rectified it under my watch as well.

“Loyalty is a two-way thing. You can’t expect your officers to be loyal to you unless you’re loyal to them…When they have that confidence in you, they’ll go to the ends of the world for you.”

Pang, 47, moved on to become permanent secretary of the Law Ministry in 2010 and the Ministry of Transport in 2012.

- Advertisement -

Hot this week

Indian national writes note to SIA crew expressing respect & appreciation; says actions of molester does not represent the community

From the FB post of a man named Sharad Govil. "Singapore Airlines (SQ) has been part of our life for years. Its crew have looked after us on more journeys than we can count, always with warmth and ...

‘I feel so sad carrying my sleeping 6-month-old to childcare’: Working mum says she’s overwhelmed by the cost of raising a family in Singapore

She appealed on social media, "Please help this overwhelmed mother. How do I quit my job if my partner only earns 3000. I earn 4000 and I am still bf my child. Could we sustain?"

Popular Categories

document.addEventListener("DOMContentLoaded", () => { const trigger = document.getElementById("ads-trigger"); if ('IntersectionObserver' in window && trigger) { const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { lazyLoader(); // You should define lazyLoader() elsewhere or inline here observer.unobserve(entry.target); // Run once } }); }, { rootMargin: '800px', threshold: 0.1 }); observer.observe(trigger); } else { // Fallback setTimeout(lazyLoader, 3000); } });
// //
Enable Notifications OK No thanks