Post Job Free
Sign in

Accounting Manager

Company:
Creative Financial Staffing
Location:
Columbus, OH, 43215
Posted:
December 11, 2025
Apply

Description:

Accounting ManagerColumbus, OH About the Role We are seeking an Accounting Manager to join our client's team. This role is ideal for a detail-oriented professional who thrives in a dynamic environment and is passionate about driving financial excellence and operational efficiency. In this role, you will oversee the accounting department and support the firm's financial and operational initiatives - managing budgeting, payroll, workflow automation, and cross-department projects that enhance efficiency and compliance. Key Responsibilities

Oversee and manage the organization's accounting operations, including general ledger, accounts payable, accounts receivable, and month-end close processes.

Develop and monitor budgeting and forecasting activities, providing detailed financial analyses to support strategic decision-making.

Supervise payroll and related compliance functions to ensure timely and accurate compensation for all employees.

Implement process improvements and workflow enhancements to increase efficiency and accuracy across accounting and financial operations.

Collaborate with internal teams and leadership to align accounting practices and financial reporting with organizational objectives and regulatory requirements. Qualifications

Bachelor's degree in Accounting, Finance, or related field required.

5+ years of progressive accounting experience, including supervisory responsibilities.

Strong knowledge of GAAP and regulatory compliance.

Proficiency in accounting software, Paychex payroll software, and proficient Excel skills.

Excellent analytical, organizational, and communication skills. 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