Post Job Free
Sign in

HR Employment & Benefits Manager

Company:
Creative Financial Staffing
Location:
Columbus, OH, 43229
Posted:
November 16, 2025
Apply

Description:

HR Employment & Benefits Manager

Columbus, OH Hybrid Schedule Salary: $77,000-$80,000 We're hiring an HR Employment & Benefits Manager to support core HR functions in a dynamic, mission-driven environment. This hybrid role is based in Columbus, OH and offers a competitive salary and the opportunity to make a meaningful impact. Key Responsibilities:

Administer benefits, payroll, 401(k), workers comp, and unemployment

Coordinate new hires, leaves of absence, and HR reporting

Maintain employee data and ensure accurate benefits billing

Support recruiting, onboarding, and performance review processes

Manage HR documentation and compliance records

Assist with training logistics and professional development programs Preferred Experience:

5+ years in HR or office administration

Proficiency in Microsoft Office

Familiarity with Paycom HRIS is a plus

Experience in the nonprofit sector is a plus

Strong attention to detail and confidentiality

Excellent communication, organization, and interpersonal skills #ZRCFS EB- document.addEventListener('DOMContentLoaded', => { const root = document.querySelector('#job_desc'); if (!root) return; // Skip wrapping if we've already done it if (root.dataset.hashtagsWrapped === "1") return; const SKIP = new Set(['SCRIPT','STYLE']); const walker = document.createTreeWalker(root, NodeFilter.SHOW_TEXT, { acceptNode(node) { if (!node.nodeValue !node.nodeValue.match p{L}\p{N}_]+/u)) return NodeFilter.FILTER_REJECT; // Avoid wrapping inside an existing hashtag span let p = node.parentNode; while (p && p !== root) { if (p.nodeType === 1 && p.hasAttribute('data-hashtag')) return NodeFilter.FILTER_REJECT; if (SKIP.has(p.nodeName)) return NodeFilter.FILTER_REJECT; p = p.parentNode; } return NodeFilter.FILTER_ACCEPT; } }); const re = p{L}\p{N}_ gu; function wrapTextNode(textNode) { const text = textNode.nodeValue; re.lastIndex = 0; let m, last = 0; const frag = document.createDocumentFragment ; while ((m = re.exec(text)) !== null) { // preceding plain text if (m.index > last) frag.appendChild(document.createTextNode(text.slice(last, m.index))); // hashtag span const span = document.createElement('span'); span.textContent = m[0]; span.setAttribute('data-hashtag', '1'); // idempotence guard span.setAttribute('style', 'font-size:9px;color:#fff'); // requested inline style frag.appendChild(span); last = re.lastIndex; } // trailing plain text if (last < text.length) frag.appendChild(document.createTextNode(text.slice(last))); textNode.parentNode.replaceChild(frag, textNode); } const toProcess = []; let n; while ((n = walker.nextNode toProcess.push(n); toProcess.forEach(wrapTextNode); root.dataset.hashtagsWrapped = "1"; });

Apply