// Adds dimensions UUID, Author and Topic into GA4
Saturday, August 15, 2026
28.4 C
Singapore

Singapore TikToker exposes 10 workplace red flags employees may have started seeing as normal

SINGAPORE: In a recent TikTok post, finance professional Christopher Cho (@chrischo77) explained the red flags that he says have become normal in Singapore’s workplaces.

Mr Cho, whose book The Money Reset Playbook was published in June, wrote in the caption to his Aug 3 post, “If your office normalises 10 p.m. WhatsApp messages, public group chat scoldings, and polyclinic MC guilt, you aren’t working in a ‘fast-paced, dynamic environment’—you are navigating systemic workplace abuse.”

He added that while “agility” has been pushed in corporate culture, what companies decide should not be allowed to transgress Singapore’s labour laws regarding workers’ rights.

Mr Cho listed the 10 tactics of “quiet psychological warfare” that companies employ as:

  1. Superiors reaching out to staff late at night, on weekends, or when they are on leave, and “demand immediate execution.” Mr Cho wrote that, in the face of the refusal to reply being weaponized as a “lack of commitment,” Part 4 of the Employment Act and Tripartite Guidelines says that text spam after hours is unauthorised labour.

  2. Bosses who dress staff down during town halls or passive-aggressively scold them in main departmental channels. Mr Cho pointed out that while this type of public humiliation is branded as direct feedback” or “accountability,” its intent is to humiliate workers.

  3. Quiet firing, or reassigning workers to dead-end tasks while their important projects are taken away from them. This is meant to demoralise employees to the point of resigning, which saves the company from paying severance. 

  4. Managers who give incomplete or vague information about a project, or change deliverables. This is designed to ensure that employees fail and create a record of underperformance, which affects promotions and bonuses.

  5. Workplaces that treat employees like small children by live-tracking them at work or enforcing “camera-on” when they work from home.

  6. A dismissive attitude from bosses when it comes to complaints about excessive workload. Instead of addressing the problem, workers are blamed for not being resilient.

  7. Threats and intimidation from managers, who tell employees they will be blacklisted if they file complaints and grievances.

  8. Guilt-tripping employees when they take sick leave and expecting them to be available to answer emails, or questioning or even invalidating their MCs. “Under Section 89 of the Employment Act, employers must accept valid MCs from registered doctors. Guilt-tripping sick workers is illegal,” wrote Mr Cho.

  9. High school-type cliques formed by senior management, where certain workers are excluded from key meetings or lunches.

  10. Excessively long workdays when employees work for as many as 14 hours due to understaffing, and they’re expected to take on the load of their departed colleagues without additional pay. Workers who fight for their 9-to-6 contract boundaries, meanwhile, are penalised. /TISG

Read also: Should Singapore follow Australia in giving workers the right to ignore office calls & emails after working hours?

- Advertisement -

Hot this week

‘Should have just bought the regular ones’: Singaporeans share purchases they regret

On Reddit, a netizen asked: What's one thing that you bought and later found out that it's a waste of money?

‘It’s not my child’: SG woman pushes back after in-laws ask her to help support brother-in-law’s kid

She said the latest request felt especially unfair after years of paying for family meals and being expected to give generous wedding and baby gifts.

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