{"id":5137,"date":"2025-03-21T07:45:40","date_gmt":"2025-03-21T07:45:40","guid":{"rendered":"https:\/\/www.hashmicro.com\/my\/blog\/?p=5137"},"modified":"2026-02-19T07:01:16","modified_gmt":"2026-02-19T07:01:16","slug":"employment-contract","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/","title":{"rendered":"Employment Contracts: Definition, Terms, and Types"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Beginning a new job is an exciting milestone filled with new opportunities and responsibilities. However, it also requires handling essential paperwork, such as signing an employment contract. This document serves as the backbone of your professional relationship with your employer.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Unfortunately, many employees neglect to review its details carefully, leading to misunderstandings about their rights and obligations. To prevent that, managing employment contracts can be simple with the right tools. <\/span><a href=\"https:\/\/www.hashmicro.com\/my\/human-resource-management\"><span style=\"font-weight: 400;\">HashMicro\u2019s HRM software<\/span><\/a><span style=\"font-weight: 400;\"> automates job contract creation and tracking, ensuring accuracy and compliance at every stage.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">With customizable templates, you can save time and minimize errors, while integrated tools streamline HR tasks like payroll and attendance tracking. HashMicro\u2019s all-in-one solution keeps businesses organized, compliant, and efficient.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This article covers the key elements, types, and examples of employment contracts to enhance your understanding of workforce management. Discover how solutions like HashMicro simplify your contract management.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><!-- <div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tTable of Content\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div>\r\n\r\n<div class=\"dropdown-fixed-top\" id=\"dropdown-fixed-top\">\r\n\t<div class=\"row\">\r\n\t\t<p id=\"pilihDaftarIsi\">Content Lists<\/p>\r\n\t\t<p><i class=\"td-icon-menu-down\"><\/i><\/p>\r\n\t<\/div>\r\n\t\r\n\t<div>\r\n\t\t<ul id=\"list_toc_top\" class='list_toc'><\/ul>\r\n\t<\/div>\r\n<\/div> -->\r\n\r\n<!-- TOC mobile -->\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Table of Content<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n<!-- TOC mobile -->\r\n\r\n<style>\r\n\t@media (max-width: 992px) {\r\n\t\t#toc_group_article {\r\n\t\t\tpadding-top: 24px;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc_float {\r\n\t\tmax-height: calc(100vh - 250px);\r\n\t\toverflow-y: auto;\r\n\t}\r\n\t\r\n\t#list_toc_top {\r\n\t\tdisplay: none;\r\n\t\tbackground: #fff;\r\n\t\tmargin-bottom: 4px;\r\n\t}\r\n\t\r\n\t#list_toc_top li {\r\n\t\tdisplay: block;\r\n\t\tmargin-left: 0;\r\n\t\tlist-style: none;\r\n\t}\r\n\t\r\n\t#list_toc_top a {\r\n\t\tpadding: 5px;\r\n\t\tdisplay: block;\r\n\t}\r\n\t\r\n\t#list_toc_top.show {\r\n\t\tdisplay: block;\r\n\t}\r\n\r\n\t#list_toc_top a {\r\n\t\tcolor: #434343;\r\n\t\tborder-bottom: 1px solid #bbb;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top {\r\n\t\tposition: fixed;\r\n\t\ttop: 59px;\r\n\t\twidth: 100%;\r\n\t\tz-index: 99;\r\n\t\tborder-bottom: 2px solid #9c171e;\r\n\t\tpadding: 12px;\r\n\t\tbackground: #fff;\r\n\t\twidth: 100%;\r\n\t\tcursor: pointer;\r\n\t\tdisplay: none;\r\n\t\tleft: 0;\r\n\t\tbox-shadow: 0 -2px 7px 6px rgba(0, 0, 0, 0.17);\r\n\t}\r\n\t\r\n\t#dropdown-fixed-top.show {\r\n\t\tanimation: showAnim 0.5s ease;\r\n\t\tdisplay: block;\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t@keyframes showAnim {\r\n\t\tfrom {\r\n\t\t\tdisplay: none;\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\tto {\r\n\t\t\tdisplay: block;\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top #list_toc_top {\r\n\t\tmax-height: calc(50vh - 110px);\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row p {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t\r\n\t#pilihDaftarIsi {\r\n\t\tmax-width: 100%;\r\n\t\toverflow: hidden;\r\n\t\twhite-space: nowrap;\r\n\t}\r\n\t\r\n\t@media (min-width: 1018px) {\r\n\t\t.dropdown-fixed-top {\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_top li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor: #000;\r\n\t\tmargin-bottom: 6px;\r\n\t\tpadding-top: 2px;\r\n\t\tpadding-bottom: 2px;\r\n\t\ttransition: all 0.2s ease-in-out;\r\n\t\tfont-size: 15px;\r\n\t\tline-height: 18px;\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t}\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\t\t\t\t\r\n\t}\r\n\r\n<\/style>\r\n\r\n<style>\r\n\t@media (max-width: 992px) {\r\n\t\t#toc_group_article {\r\n\t\t\tpadding-top: 24px;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc_float {\r\n\t\tmax-height: calc(100vh - 250px);\r\n\t\toverflow-y: auto;\r\n\t}\r\n\t\r\n\t#list_toc_top {\r\n\t\tdisplay: none;\r\n\t\tbackground: #fff;\r\n\t\tmargin-bottom: 4px;\r\n\t}\r\n\t\r\n\t#list_toc_top li {\r\n\t\tdisplay: block;\r\n\t\tmargin-left: 0;\r\n\t\tlist-style: none;\r\n\t}\r\n\t\r\n\t#list_toc_top a {\r\n\t\tpadding: 5px;\r\n\t\tdisplay: block;\r\n\t}\r\n\t\r\n\t#list_toc_top.show {\r\n\t\tdisplay: block;\r\n\t}\r\n\r\n\t#list_toc_top a {\r\n\t\tcolor: #434343;\r\n\t\tborder-bottom: 1px solid #bbb;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top {\r\n\t\tposition: fixed;\r\n\t\ttop: 59px;\r\n\t\twidth: 100%;\r\n\t\tz-index: 99;\r\n\t\tborder-bottom: 2px solid #9c171e;\r\n\t\tpadding: 12px;\r\n\t\tbackground: #fff;\r\n\t\twidth: 100%;\r\n\t\tcursor: pointer;\r\n\t\tdisplay: none;\r\n\t\tleft: 0;\r\n\t\tbox-shadow: 0 -2px 7px 6px rgba(0, 0, 0, 0.17);\r\n\t}\r\n\t\r\n\t#dropdown-fixed-top.show {\r\n\t\tanimation: showAnim 0.5s ease;\r\n\t\tdisplay: block;\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t@keyframes showAnim {\r\n\t\tfrom {\r\n\t\t\tdisplay: none;\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\tto {\r\n\t\t\tdisplay: block;\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top #list_toc_top {\r\n\t\tmax-height: calc(50vh - 110px);\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row p {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t\r\n\t#pilihDaftarIsi {\r\n\t\tmax-width: 100%;\r\n\t\toverflow: hidden;\r\n\t\twhite-space: nowrap;\r\n\t}\r\n\t\r\n\t@media (min-width: 1018px) {\r\n\t\t.dropdown-fixed-top {\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_top li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor: #000;\r\n\t\tmargin-bottom: 6px;\r\n\t\tpadding-top: 2px;\r\n\t\tpadding-bottom: 2px;\r\n\t\ttransition: all 0.2s ease-in-out;\r\n\t\tfont-size: 15px;\r\n\t\tline-height: 18px;\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\r\n<\/style>\r\n\r\n<!-- START ToC styling  -->\r\n<style>\r\n\t\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 0px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 90% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\t\t\tright: 5%;\r\n\t\t}\r\n\t}\r\n\t\r\n\t<\/style>\r\n<!-- END ToC styling  -->\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title'); \/\/ Assuming header-faq is the element for TOC title\r\n\r\n\/\/ Sticky TOC and update heading\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 700;\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\tconst panel2 = document.querySelector(\"#toc .list\");\r\n\tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n  let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n  \/\/ Function to handle scroll and add\/remove .sticky class\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Highlight user progress as the heading comes\r\n    headers.forEach(header => {\r\n\t\tconst headerTop = header.offsetTop;\r\n\t\tconst headerHeight = header.clientHeight;\r\n\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\t\t\ttocTitle.textContent = currentHeaderText;\r\n\t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\t\t\tif(window.innerWidth < 767){\r\n\t\t\t\ttocTitle.textContent = 'Table of Content';\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader != '') {\r\n\t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\t\t\t  link.classList.add('active');\r\n\t\t  }\r\n\t  }\r\n    });\r\n\/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/         toc.style.display = 'block';\r\n\/\/ \t}else{\r\n\/\/         toc.style.display = 'none';\r\n\/\/ \t}\r\n    \/\/ Update TOC title if sticky\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n        toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n        toc.style.backgroundColor = \"#FFF\";\r\n\t\tpanel2.style.height = '0px';\r\n\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t  if(window.innerWidth < 767){\r\n\/\/ \t\t\t  const tocs = document.querySelector('#toc.sticky');\r\n\t\t\t  tocTitle.textContent = 'Table of Content'; \/\/ Reset title\r\n       \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\t\t  }\r\n      }\r\n      if (currentHeader) {\r\n\/\/         console.log(\"activeLink:\", activeLink);\r\n        if (activeLink) {\r\n\/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n          tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n        }\r\n      }\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset'; \/\/ Reset to original width\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Table of Content'; \/\/ Reset title\r\n\t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\t\ticon.style.transform = \"rotate(180deg)\";\r\n    }\r\n  }\r\n\r\n    \/\/ Attach the scroll event listener to the window\r\n    window.addEventListener('scroll', handleScroll);\r\n\r\n    \/\/ Initial call to handleScroll to set the correct state on load\r\n    handleScroll();\r\n});\r\n\t\r\n\t\/\/ Open toggle TOC\r\n\t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\t\tvar toc = document.querySelector(\"#toc\");\r\n\t\tvar icon = document.querySelector(\".toc-icon\");\r\n\t\tconst tocTitle = document.querySelector('#toc-title');\r\n\t\tconst tocs = document.querySelector('#toc.sticky');\r\n \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\t\t  tocHeader.addEventListener(\"click\", function() {\r\n\t\t\tvar panel = this.nextElementSibling;\r\n\t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t\t\ttoc.style.paddingBottom = '6px'; \r\n\t\t\t\tif(window.innerWidth > 768){\r\n\t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t\t}\r\n\t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif(window.innerWidth < 767){\r\n\t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\t\t\t\t}\r\n\t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\t\t\t} else {\r\n\t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\t\t\t  tocTitle.textContent = 'Table of Content'; \/\/ Reset title\r\n\t\t\t\ttoc.style.paddingBottom = '24px';\r\n\t\t\t \tif(window.innerWidth < 767){\r\n\t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t  });\r\n\r\n\t\t  \/\/ Close TOC when a link inside it is clicked\r\n\t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\t\t  tocLinks.forEach(function(link) {\r\n\t\t\tlink.addEventListener(\"click\", function() {\r\n\t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\t\t\t});\r\n\t\t  });\r\n\t\t});\r\n<\/script>\r\n\r\n<!-- <script>\r\n\tvar pilihDaftarIsi = document.getElementById('pilihDaftarIsi');\r\n\t\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n\t\tvar dropdownFixedTop = document.querySelector('.dropdown-fixed-top');\r\n\r\n\t\tdropdownFixedTop.addEventListener('click', function() {\r\n\t\t\tvar dropdownContent = this.querySelector('.list_toc');\r\n\t\t\tdropdownContent.classList.toggle('show');\r\n\t\t});\r\n\r\n\t\twindow.addEventListener('click', function(event) {\r\n\t\t\tvar listTocTop = document.getElementById('list_toc_top');\r\n\r\n\t\t\tif (!dropdownFixedTop.contains(event.target)) {\r\n\t\t\t\tlistTocTop.classList.remove('show');\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\t\r\n\tvar daftarIsiContainer = document.getElementById('toc_group_article');\r\n\tvar dropdownFixedTop = document.getElementById('dropdown-fixed-top');\r\n    var triggered = false; \/\/ Flag to keep track of whether the function has been triggered\r\n\r\n    window.addEventListener('scroll', function() {\r\n        if (!triggered && isCompletelyScrolledPast(daftarIsiContainer)) {\r\n            showSectionDropdownFixedTop(false);\r\n            triggered = true;\r\n        } else if (triggered && !isCompletelyScrolledPast(daftarIsiContainer)) {\r\n            showSectionDropdownFixedTop(true);\r\n            triggered = false;\r\n        }\r\n    });\r\n\r\n    function isCompletelyScrolledPast(element) {\r\n        var elementTop = element.getBoundingClientRect().top;\r\n        var elementBottom = element.getBoundingClientRect().bottom;\r\n        return elementTop < 0 && elementBottom < 0;\r\n    }\r\n\r\n    function showSectionDropdownFixedTop(show) {\r\n\t\tif (show) {\r\n\t\t\tdropdownFixedTop.classList.remove(\"show\");\r\n\t\t} else {\r\n\t\t\tdropdownFixedTop.classList.add(\"show\");\r\n\t\t}\r\n    }\r\n\r\n\/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n\t\t  pilihDaftarIsi.innerHTML = a.textContent;\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float', 'list_toc_top']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script> -->\r\n<!-- END script lama -->\r\n\t\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float', 'list_toc_top']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\t\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!-- <script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n        \/\/ Fungsi untuk mengubah teks menjadi format id\r\n        function formatId(text) {\r\n            return text.trim().replace(\/[^\\w\\d]+\/g, '_');\r\n        }\r\n\r\n        \/\/ Fungsi untuk membuat nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        const elements = document.querySelectorAll('.td-post-content h2');\r\n\t\t\t\/\/, .td-post-content h3\r\n\r\n        elements.forEach(element => {\r\n            if (element.tagName === 'H2') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n\t\t\t\tif(element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Biar ga nampilin Key Takeaways di ToC\r\n                headings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n            } else if (element.tagName === 'H3') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n                if (headings.length > 0) {\r\n                    headings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n                }\r\n            }\r\n        });\r\n\r\n        \/\/ Membuat list HTML dari objek headings\r\n        const ul = document.getElementById('list_toc');\r\n        let currentUl = ul;\r\n        headings.forEach(heading => {\r\n            const li = document.createElement('li');\r\n            const a = document.createElement('a');\r\n            a.textContent = heading.title;\r\n            a.href = `#${heading.id}`;\r\n            li.appendChild(a);\r\n\r\n            if (heading.level === 'h2') {\r\n                \/\/ Menyimpan ul saat ini untuk menambahkan nested ul\r\n                currentUl = li;\r\n                ul.appendChild(li);\r\n            } else if (heading.level === 'h3') {\r\n                if (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n                    \/\/ Jika belum ada nested ul, buat satu\r\n                    const nestedUl = document.createElement('ul');\r\n                    currentUl.appendChild(nestedUl);\r\n                    currentUl = nestedUl;\r\n                }\r\n                currentUl.appendChild(li);\r\n            }\r\n\r\n            createNestedList(li, heading.children);\r\n        });\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc_float'\r\nconst ulFloat = document.getElementById('list_toc');\r\nconst ulJourney = document.getElementById('list_journey');\r\n\r\n\/\/ Dapatkan isi (child elements) dari ul dengan id 'list_toc_float'\r\n\tif (ulFloat !== null) {\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\t\tconst ulTocTop = document.getElementById('list_toc_top');\r\n\t\tif ((ulToc !== null || ulToc !== undefined) && window.innerWidth > 1018){\r\n\t\t\tulToc.append(...clonedChildren);\r\n\t\t} else {\r\n\t\t\tulTocTop.append(...clonedChildren);\r\n\t\t}\r\n\t} \r\n\r\n\tif (ulJourney !== null) {\r\n\t\tconst clonedChildrenJourney = ulJourney.cloneNode(true).children;\r\n\t\tconst ulTocJourney = document.getElementById('list_toc_journey');\r\n\t\tulTocJourney.append(...clonedChildrenJourney);\r\n\t} \r\n\r\n\r\n\r\n\r\n\t\r\n        \/\/ Fungsi untuk mengambil tinggi navbar\r\n        function getNavbarHeight() {\r\n            const navbar = document.getElementById('tdi_34');\r\n            return navbar ? navbar.offsetHeight : 0;\r\n        }\r\n\r\n        \/\/ Fungsi untuk menambahkan offset posisi scroll\r\n        function scrollToElementWithOffset(elementId) {\r\n            const element = document.getElementById(elementId);\r\n            if (element) {\r\n                const offset = getNavbarHeight();\r\n                const elementPosition = element.getBoundingClientRect().top;\r\n                const offsetPosition = elementPosition - offset-40;\r\n\r\n                window.scrollBy({\r\n                    top: offsetPosition,\r\n                    behavior: 'smooth'\r\n                });\r\n            }\r\n        }\r\n\r\n        \/\/ Fungsi untuk menangani klik pada tautan judul\r\n        function handleTitleClick(event) {\r\n            event.preventDefault();\r\n            const href = event.target.getAttribute('href').substr(1);\r\n            scrollToElementWithOffset(href);\r\n        }\r\n\r\n        \/\/ Tambahkan event listener untuk semua tautan judul\r\n        const titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n        titleLinks.forEach(link => {\r\n            link.addEventListener('click', handleTitleClick);\r\n        });\r\n\t});\r\n    <\/script> -->\r\n<!-- \t<style>#toc_group_float{display:block !important}<\/style> -->\r\n<a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/?medium=free-product-demo\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/free-demo-desktop-my.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/free-demo-desktop-my.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/07\/free-demo-mobile-my.jpg\" alt=\"FreeDemo\" class=\"responsive-image-banner\"><\/a>\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script><\/span><\/p>\n<table style=\"border-collapse: collapse; background-color: #fffacd; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); border-radius: 25px 25px 25px 25px;\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 15px; border: none;\">\n<h3 style=\"margin-bottom: 10px;\"><span style=\"background-color: #990000; color: #ffffff; padding: 5px;\"><b>Key Takeaways<\/b><\/span><\/h3>\n<ul>\n<li><span style=\"font-weight: 400;\"><a href=\"#employment\">Employment contracts<\/a> define job terms, roles, and responsibilities, ensuring clarity for both parties. They outline compensation, benefits, and termination conditions, creating a legally binding agreement.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">There are various <a href=\"#types\">types<\/a> of employment contracts, such as full-time, part-time, casual, and independent.\u00a0<\/span><\/li>\n<li><a href=\"https:\/\/www.hashmicro.com\/my\/human-resource-management\"><span style=\"font-weight: 400;\">HashMicro HR software<\/span><\/a><span style=\"font-weight: 400;\"> streamlines HR tasks in Malaysia, automating salary, leave, attendance, and reimbursement management for seamless operations.<\/span><\/li>\n<\/ul>\n<p><span id=\"employment\"><\/span><span style=\"font-weight: 400;\"><style>\r\n.button-cta-custom {\r\n    background-color: #8a0e19;\r\n    color: #fff !important;\r\n    -webkit-transition: all .3s ease;\r\n    transition: all .3s ease;\r\n    padding: 8px 24px;\r\n    display: inline-block;\r\n    border-radius: 8px;\r\n    font-size: 16px;\r\n    font-weight: bold;\r\n}\r\n.button-cta-custom:hover{\r\n\tbackground-color:#991b26\t\t\r\n}\r\n<\/style>\r\n<a class=\"button-cta-custom\" href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo?medium=cta-button\" target=\"_blank\">Click Here to Get the Free Demo!<\/a><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><b>What is a Contract of Employment?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Employment contracts are official agreements that outline job terms, employee roles, and responsibilities, ensuring clarity for both parties. These contracts specify essential details such as job duration, compensation, benefits, and termination conditions. By setting clear expectations, employment contracts help establish a professional and legally binding framework for the working relationship.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A well-crafted <\/span><a href=\"https:\/\/www.researchgate.net\/publication\/369089939_The_correlation_between_an_employment_contract_and_employee_motivation\"><span style=\"font-weight: 400;\">employment contract<\/span><\/a><span style=\"font-weight: 400;\"> promotes transparency and security, reducing misunderstandings and potential disputes between employers and employees. Businesses rely on these agreements to define obligations while protecting sensitive company information.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In some cases, an employment contract may also include a \u201cNon-Compete Agreement,\u201d restricting former employees from working for direct competitors within a specified period after leaving the company. This provision helps safeguard the organization\u2019s competitive advantage by preventing the misuse of insider knowledge.<\/span><\/p>\n<h2><b>10 Things That Must Be Included in an Employment Contract<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">As your business expands, adding new team members becomes crucial. While industry connections may have helped build your current team, limited hiring experience highlights the need for a solid HR policy. A well-structured employment contract is the first step, ensuring essential protections for your company and new employees.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Incentives boost employee motivation and align personal goals with company objectives. They promote healthy competition and enhance overall productivity. While every employment contract in Malaysia must contain essential clauses, HR development should prioritize these ten key elements.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">1. Job information<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">The &#8220;Job Information&#8221; section outlines the employee&#8217;s position, duties, and responsibilities. It specifies the job title and scope of work, ensuring clarity between both parties and minimizing potential misunderstandings.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Providing precise job details also helps set goals and assess performance, aligning the employee&#8217;s efforts with the company&#8217;s overall objectives.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">2. Compensations and benefits<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">An employment contract&#8217;s compensation and benefits specify an employee\u2019s <\/span><a href=\"https:\/\/www.hashmicro.com\/my\/blog\/prorated-salary\/\"><span style=\"font-weight: 400;\">prorated salary<\/span><\/a><span style=\"font-weight: 400;\">, bonuses, allowances, and other financial incentives. This section clarifies payment details, including the amount, frequency (e.g., monthly or annually), and additional perks such as health insurance, retirement plans, or other benefits.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Clearly outlining compensation and benefits helps manage expectations for both employers and employees, fostering job satisfaction, motivation, and compliance with labor laws.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">3. Time off, sick days, and vacation policy<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">The &#8220;Time Off, Sick Days, and Vacation Policy&#8221; section in an employment contract outlines an employee\u2019s leave entitlements, including paid time off, sick leave, and vacation days, along with the procedures for requesting leave.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Clearly defining these policies helps ensure mutual understanding between employers and employees regarding absence management, promoting fairness and transparency while supporting a healthy work-life balance.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Additionally, this section safeguards the company by establishing clear guidelines for planned and unexpected absences, reducing disruptions to business operations.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">4. Employee classifications<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Properly distinguishing between employees and contractors is essential for complying with tax and insurance regulations. Misclassification can result in legal issues, as Uber\u2019s ongoing lawsuits demonstrate.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Recognizing the fundamental differences between these classifications helps ensure accurate workforce categorization, minimizing risks and preventing potential disputes.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">5. The schedule and employment period<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">An employment contract should clearly define whether the position is permanent or temporary and the expected working hours to establish the employer-employee relationship.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It should specify the required work hours and flexible arrangements, such as remote or hybrid options. If the role involves night or weekend shifts, outlining their frequency and scheduling ensures clarity and aligns expectations for both parties.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">6. Confidentiality agreement<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Protect confidential information, including trade secrets and customer data, by incorporating a confidentiality agreement within the employment contract. Instead of a separate document, integrate it into the contract with a dedicated section for employees to sign, ensuring clarity and digital compliance.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">7. A technology privacy policy<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">A technology privacy policy establishes clear rules for employees regarding appropriate company technology and data use. It safeguards sensitive information while ensuring digital resources are utilized responsibly and securely.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">8. Termination terms and conditions of the employment contract<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Clearly outline the procedures for ending the employment relationship, specifying the required notice period and whether a written notice from the employer or the employee is mandatory. Additionally, include any conditions related to termination, such as severance pay.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">9. Severance or outplacement plan information<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Clearly outline the terms and conditions for ending the employment relationship, detailing the required notice period and whether written notice is mandatory from both the employer and the employee. Additionally, specify any circumstances under which immediate termination may occur.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">10. Requirements after termination<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Specify any post-employment restrictions or obligations in the employment contract. For example, an employee may be restricted from launching a competing business in the same industry or region for a set period or directly engaging with the company\u2019s clients.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">To streamline contract drafting, utilize a digital solution like the HashMicro job proposal template. Its automated process and paperless signing make onboarding new hires more efficient and stress-free.<\/span><\/p>\n<p><span id=\"types\"><\/span><span style=\"font-weight: 400;\">Beyond employee agreements, businesses frequently establish agreements with other companies to solidify partnerships or collaborations. HashMicro&#8217;s HRM software simplifies this process by centralizing all contracts securely and offering various efficiency-boosting features.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/my\/offer\/download-erp-pricing-list?medium=banner-article\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/skema-harga-desktop-my.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/skema-harga-desktop-my.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/skema-harga-mobile-my.webp\" alt=\"SkemaHarga\" class=\"responsive-image-banner\"><\/a>\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script><\/span><\/p>\n<h2><b>Types of Employment Contract Letters<\/b><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-5138\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters.webp\" alt=\"Types of Employment Contract Letters\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters.webp 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-300x169.webp 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-768x432.webp 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-747x420.webp 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-150x84.webp 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-696x392.webp 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Types-of-Employment-Contract-Letters-1068x601.webp 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Every employment arrangement has advantages and challenges, making it crucial to document agreements in writing. Selecting the right employment structure should align with your company\u2019s operational needs while adhering to industry norms for each role.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Additionally, businesses should assess how different employment types affect financial performance. Below are the most common categories of workers that companies typically employ.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">1. Full-time employment contract<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">A full-time employment contract is among the most widely used work contracts. It generally requires employees to work a set number of hours per week and offers a stable salary and various benefits.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This agreement defines the employee\u2019s position, duties, and employment terms, covering salary, work hours, and benefits like health insurance, paid leave, and retirement plans. Full-time contracts stabilize both parties, establishing clear expectations and fostering long-term commitment.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">2. Part-time employment contract<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">A part-time employment contract applies to employees working fewer hours than full-time staff, with specified weekly or monthly work hours. These roles typically offer limited benefits, such as reduced access to health insurance and paid leave.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Despite fewer benefits, part-time positions provide flexibility, benefiting employers and employees seeking a better work-life balance. They are commonly used in industries where full-time roles are not always practical or required.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">3. Casual employment contract<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">A casual employment contract applies to workers hired as needed without fixed hours or a guaranteed schedule. This arrangement offers flexibility for employers and employees, making it ideal for short-term or unpredictable workloads.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Casual employees often earn higher hourly wages but typically do not receive benefits like paid leave, sick pay, or <\/span><a href=\"https:\/\/www.hashmicro.com\/my\/blog\/overtime-pay\/\"><span style=\"font-weight: 400;\">overtime pay<\/span><\/a><span style=\"font-weight: 400;\">. These contracts are widely used in industries with varying labor demands, such as hospitality, retail, and seasonal work.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">4. Fixed-term employment contract<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">A fixed-term employment contract is set for a defined period, typically aligned with a specific project, seasonal demand, or other temporary needs. It outlines start and end dates, ensuring both parties understand the employment duration.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">These contracts are often used in industries with temporary workforce requirements, such as construction or project-based roles. While benefits like paid leave and health coverage may be limited, <\/span><a href=\"https:\/\/www.abs.gov.au\/statistics\/labour\/earnings-and-working-conditions\/working-arrangements\/latest-release\"><span style=\"font-weight: 400;\">fixed-term contracts<\/span><\/a><span style=\"font-weight: 400;\"> offer employers flexibility in managing short-term staffing without long-term obligations.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">5. Independent employment contract<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">An independent employment contract, a contractor or freelance agreement, is designed for individuals who provide services to a business as self-employed professionals. It specifies the terms under which the contractor will complete tasks or deliverables.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Unlike traditional employment agreements, these contracts define the scope of work, payment terms, and responsibilities without including employee benefits like health insurance or paid leave.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Independent contractors work autonomously and handle their taxes and insurance. This type of contract is widely used in industries requiring specialized expertise or short-term project-based work.<\/span><\/p>\n<h2><b>Simplify Your Employment Contract with HashMicro HRM Software<\/b><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter size-full wp-image-5139\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2.webp\" alt=\"\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2.webp 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-300x163.webp 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-768x416.webp 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-775x420.webp 775w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-150x81.webp 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-696x377.webp 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/HR-software-malaysia-2-1068x579.webp 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">HashMicro\u2019s HRM software offers a comprehensive solution for managing employment contracts, ensuring accuracy, compliance, and efficiency. <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-erp-software\/\">Integrated with ERP systems<\/a>, it simplifies contract creation, storage, and monitoring, helping businesses maintain clear and structured employee agreements.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The system streamlines HR processes, covering everything from contract drafting and digital signing to renewal tracking and compliance management. With its advanced features,<\/span><a href=\"https:\/\/www.hashmicro.com\/my\/human-resource-management\"> <span style=\"font-weight: 400;\">HashMicro\u2019s HRM software<\/span><\/a><span style=\"font-weight: 400;\"> reduces manual errors, improves transparency, and optimizes contract management.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Here are the key features that make it a great choice for your business:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Employee Database:<\/b> <span style=\"font-weight: 400;\">This database stores detailed employee records, including contract terms, personal details, and job roles, allowing for quick and easy access when needed.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Employee Contract Management<\/b><span style=\"font-weight: 400;\"> enables the secure creation, management, and storage of employment contracts while ensuring compliance with labor laws. Both employers and employees can conveniently access contract details.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Employee On\/Off-Boarding:<\/b> <span style=\"font-weight: 400;\">Streamlines the hiring and exit processes by ensuring all required documentation aligns with contract terms, making transitions smoother.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Payroll Management:<\/b> <span style=\"font-weight: 400;\">Accurately calculates salaries, bonuses, and deductions based on employment contract terms, ensuring precise and compliant payroll processing with<\/span><a href=\"https:\/\/www.hashmicro.com\/my\/blog\/payroll-software-malaysia\/\"> <span style=\"font-weight: 400;\">payroll software<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">In addition to streamlining HR processes, HashMicro introduces Hashy, an AI-powered system designed to automate and optimize contract handling. With Hashy AI, businesses can efficiently manage employment contracts and reduce administrative workload.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The <\/span><b>View Leaves Balances<\/b><span style=\"font-weight: 400;\"> feature allows employees to track their remaining leave entitlements, ensuring clarity on their time-off allowances as stated in their employment contracts. Meanwhile, the <\/span><b>Questions on SOP<\/b><span style=\"font-weight: 400;\"> feature provides instant access to help employees understand contract-related guidelines and workplace regulations.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For managers, the <\/span><b>Generate Leaves Reports<\/b><span style=\"font-weight: 400;\"> feature offers insights into employee leave trends, ensuring compliance with contract terms and maintaining a balanced workload. Meanwhile, <\/span><a href=\"https:\/\/www.hashmicro.com\/my\/ai-agent-for-hr\/\"><span style=\"font-weight: 400;\">Hashy AI<\/span><\/a><span style=\"font-weight: 400;\">&#8216;s <\/span><b>Generate Attendance Reports<\/b><span style=\"font-weight: 400;\"> feature helps managers monitor work hours and attendance patterns, aligning with contractual obligations and workforce planning.<\/span><\/p>\n<h2><b>Conclusion<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">This article explores employment contract definitions, types, and examples, highlighting their importance for employers and employees. Understanding these agreements is essential to prevent potential legal and operational risks.<\/span><\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/my\/human-resource-management\"><span style=\"font-weight: 400;\">HashMicro\u2019s HRM software<\/span><\/a><span style=\"font-weight: 400;\"> simplifies and automates HR and employee management processes, offering Malaysia\u2019s most advanced HR system. The system ensures seamless operations from salary calculations and leave management to attendance tracking and reimbursement handling.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">With real-time notifications, your company can stay ahead of contract renewals, preventing expiration issues. The employee contract management feature makes it easy to update agreements on time. Don&#8217;t miss out\u2014schedule a <\/span><a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/\"><span style=\"font-weight: 400;\">free demo<\/span><\/a><span style=\"font-weight: 400;\"> of HashMicro today!<\/span><\/p>\n<h2><strong>Frequently Asked Questions<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>What happens if either party breaches the employment contract?<\/strong><\/summary>\n<p>Suppose an employer or employee fails to uphold the terms of the contract. In that case, the affected party may seek legal remedies, such as compensation or contract termination, depending on the situation and applicable laws.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>How long is an employment contract valid?<\/strong><\/summary>\n<p>The validity of an employment contract depends on the type (e.g., fixed-term, permanent) and the specific terms agreed upon by both parties.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>How can I ensure my employment contracts are compliant and efficient?<\/strong><\/summary>\n<p>Using digital tools such as contract management software can help ensure accuracy, compliance with labor laws, and efficient contract handling.<\/p>\n<\/details>\n<\/li>\n<\/ul>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"What happens if either party breaches the employment contract?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Suppose an employer or employee fails to uphold the terms of the contract. In that case, the affected party may seek legal remedies, such as compensation or contract termination, depending on the situation and applicable laws.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"How long is an employment contract valid?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"The validity of an employment contract depends on the type (e.g., fixed-term, permanent) and the specific terms agreed upon by both parties.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"How can I ensure my employment contracts are compliant and efficient?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Using digital tools such as contract management software can help ensure accuracy, compliance with labor laws, and efficient contract handling.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Beginning a new job is an exciting milestone filled with new opportunities and responsibilities. However, it also requires handling essential paperwork, such as signing an employment contract. This document serves as the backbone of your professional relationship with your employer.\u00a0 Unfortunately, many employees neglect to review its details carefully, leading to misunderstandings about their rights [&hellip;]<\/p>\n","protected":false},"author":33,"featured_media":5140,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[64],"tags":[],"class_list":{"0":"post-5137","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-hrm"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.6 (Yoast SEO v26.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Employment Contracts: Definition, Terms, and Types<\/title>\n<meta name=\"description\" content=\"Learn about employment contracts and their key terms to ensure clear job roles, rights, and responsibilities for employers and employees.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Employment Contracts: Definition, Terms, and Types\" \/>\n<meta property=\"og:description\" content=\"Learn about employment contracts and their key terms to ensure clear job roles, rights, and responsibilities for employers and employees.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Malaysia\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-21T07:45:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-19T07:01:16+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Muhammad Iqbal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Muhammad Iqbal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\"},\"author\":{\"name\":\"Muhammad Iqbal\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/b24b5f30d01a2465924ea6b32dc66e15\"},\"headline\":\"Employment Contracts: Definition, Terms, and Types\",\"datePublished\":\"2025-03-21T07:45:40+00:00\",\"dateModified\":\"2026-02-19T07:01:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\"},\"wordCount\":2020,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp\",\"articleSection\":[\"HRM\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\",\"name\":\"Employment Contracts: Definition, Terms, and Types\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp\",\"datePublished\":\"2025-03-21T07:45:40+00:00\",\"dateModified\":\"2026-02-19T07:01:16+00:00\",\"description\":\"Learn about employment contracts and their key terms to ensure clear job roles, rights, and responsibilities for employers and employees.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp\",\"width\":1200,\"height\":675,\"caption\":\"Employment Contracts: Definition, Terms, and Types\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/my\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Employment Contracts: Definition, Terms, and Types\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/\",\"name\":\"HashMicro Malaysia\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/my\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#organization\",\"name\":\"HashMicro Malaysia\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp\",\"width\":422,\"height\":255,\"caption\":\"HashMicro Malaysia\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/b24b5f30d01a2465924ea6b32dc66e15\",\"name\":\"Muhammad Iqbal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/10\/Muhammad-Iqbal-96x96.webp\",\"contentUrl\":\"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/10\/Muhammad-Iqbal-96x96.webp\",\"caption\":\"Muhammad Iqbal\"},\"description\":\"Muhammad Iqbal writes comprehensive articles on human resource management topics such as talent acquisition, employee engagement, and HR technologies. He addresses both strategic and operational aspects of HR to cater to a wide range of readers. His content reflects current trends and solutions in workforce management.\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/author\/muhammad-iqbal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Employment Contracts: Definition, Terms, and Types","description":"Learn about employment contracts and their key terms to ensure clear job roles, rights, and responsibilities for employers and employees.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/","og_locale":"en_US","og_type":"article","og_title":"Employment Contracts: Definition, Terms, and Types","og_description":"Learn about employment contracts and their key terms to ensure clear job roles, rights, and responsibilities for employers and employees.","og_url":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/","og_site_name":"HashMicro Malaysia","article_published_time":"2025-03-21T07:45:40+00:00","article_modified_time":"2026-02-19T07:01:16+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp","type":"image\/webp"}],"author":"Muhammad Iqbal","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Muhammad Iqbal","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/"},"author":{"name":"Muhammad Iqbal","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/b24b5f30d01a2465924ea6b32dc66e15"},"headline":"Employment Contracts: Definition, Terms, and Types","datePublished":"2025-03-21T07:45:40+00:00","dateModified":"2026-02-19T07:01:16+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/"},"wordCount":2020,"publisher":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp","articleSection":["HRM"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/","url":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/","name":"Employment Contracts: Definition, Terms, and Types","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp","datePublished":"2025-03-21T07:45:40+00:00","dateModified":"2026-02-19T07:01:16+00:00","description":"Learn about employment contracts and their key terms to ensure clear job roles, rights, and responsibilities for employers and employees.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#primaryimage","url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp","contentUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/Employment-Contracts-Terms-Types-and-Best-Practices-HashMicro.webp","width":1200,"height":675,"caption":"Employment Contracts: Definition, Terms, and Types"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/my\/blog\/employment-contract\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/my\/blog\/"},{"@type":"ListItem","position":2,"name":"Employment Contracts: Definition, Terms, and Types"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#website","url":"https:\/\/www.hashmicro.com\/my\/blog\/","name":"HashMicro Malaysia","description":"","publisher":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/my\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#organization","name":"HashMicro Malaysia","url":"https:\/\/www.hashmicro.com\/my\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp","contentUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp","width":422,"height":255,"caption":"HashMicro Malaysia"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/b24b5f30d01a2465924ea6b32dc66e15","name":"Muhammad Iqbal","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/image\/","url":"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/10\/Muhammad-Iqbal-96x96.webp","contentUrl":"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/10\/Muhammad-Iqbal-96x96.webp","caption":"Muhammad Iqbal"},"description":"Muhammad Iqbal writes comprehensive articles on human resource management topics such as talent acquisition, employee engagement, and HR technologies. He addresses both strategic and operational aspects of HR to cater to a wide range of readers. His content reflects current trends and solutions in workforce management.","url":"https:\/\/www.hashmicro.com\/my\/blog\/author\/muhammad-iqbal\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/5137","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/users\/33"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/comments?post=5137"}],"version-history":[{"count":9,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/5137\/revisions"}],"predecessor-version":[{"id":16319,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/5137\/revisions\/16319"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/media\/5140"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/media?parent=5137"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/categories?post=5137"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/tags?post=5137"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}