Full Charge Bookkeeper
Bakersfield, CA Onsite
$28-35/hour + Excellent Benefits A well-established service company in Kern County is looking to add a Full Charge Bookkeeper to their team. This is a stable, long-term opportunity for someone who enjoys owning the full accounting cycle and working in a professional, team-oriented environment. Why This Role:
Competitive hourly pay: $28-35/hour
Excellent benefits package (health, PTO, holidays, and more)
Stable organization with a professional, supportive culture
Hands-on role with autonomy and ownership What You'll Be Doing:
Handle full-cycle accounting, including AP, AR, and general ledger
Prepare and post journal entries and month-end close
Perform bank and account reconciliations
Manage payroll processing and related filings
Assist with financial statements and reporting
Maintain accurate records and support audits as needed What We're Looking For:
3+ years of full charge bookkeeping experience
Solid Excel skills
Detail-oriented, organized, and able to work independently #LI-AC8
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"; });