He was a teacher at Tunku Besar High School,
Tampin,
Negeri Sembilan (1971–1972); teacher at
Victoria Institution,
Kuala Lumpur (1972–1977); lecturer of Islamic Studies & Arabic-Islamic Teachers' College, Lembah Pantai (1972–1980); acting head of Department of Islamic Studies and Arabic-Islamic Teachers' College (1980–1981). Next was senior assistant director of student affairs, Teacher Education Division –
Ministry of Education (1982–1983) and Islamic Teachers College, Lembah Pantai,
Kuala Lumpur (1984–1985). When the
Malaysian Army Military Religious Corps (KAGAT) –
Ministry of Defense was established, he became the first KAGAT director (1985–1995) for 10 years. The then prime minister,
Mahathir Mohamad had asked him to join the
army when he was 40 years old. He therefore had to undergo military training such as
military base training,
warheads,
weapons and all military protocols. After receiving various training, the Yang di-Pertuan Agong has given his credentials with the rank of
colonel and appointed the first KAGAT director. Members of KAGAT can be sent anywhere, including serving under the banner of the
United Nations such as
Bosnia and Herzegovina and
Somalia. Once again Mahathir appointed him as the first director general, Department of Islamic Development Malaysia (JAKIM) (1995–2001). JAKIM was first established to replace the small unit known as the Islamic Affairs Division of the Prime Minister's Department (BAHEIS) at the Islamic Center. At that time Abdul Hamid was telephoned by Mahathir during his
pilgrimage to
Mecca. At the same time the Malaysian Syariah Judiciary Department (JKSM) was also established. In 2001, after 6 years in JAKIM, he was appointed
Senator and became
Minister in the Prime Minister's Department (2001 – March 2004). The post has been held by Tan Sri Dr Mohd Yusof Noor then Tan Sri
Abdul Hamid Othman. His last position was the
Chairman of
Majlis Amanah Rakyat (MARA) (16 July 2004 – 2009). He was also chairman of the
University of Kuala Lumpur and
Pro Chancellor (UniKL). ==Politics==