Senior Portfolio CPA (100% Remote – Fully Flexible Hours)

Please login or register as jobseeker to apply for this job.

TYPE OF WORK

Part Time

SALARY

$875 a month + $50 month stipend

HOURS PER WEEK

20

DATE UPDATED

Feb 13, 2026

JOB OVERVIEW

We are looking for a meticulous and proactive Certified Public Accountant (CPA) based in the Philippines to take full ownership of the financial health of our portfolio companies, and work for Do Good Group ( ---------- ). Our focus is to create jobs and donate most of the profits to charity.

We don't care when you work, as long as the work is flawless and deadlines are met. Whether you are a night owl or a morning person, you will have total autonomy over your schedule.

What You’ll Do

Full-Cycle Bookkeeping: Maintain clean, audit-ready books for multiple entities.

Financial Reporting: Prepare monthly, quarterly, and annual P&L, Balance Sheets, and Cash Flow statements.

Reconciliations: Perform complex bank, credit card, and intercompany reconciliations.

M&A Support: Assist in financial due diligence for potential new acquisitions (analyzing historical data and verifying financial health).

Process Improvement: Build and scale accounting workflows that work across our entire portfolio.

Who You Are

Licensed CPA: You must hold a current CPA license (Philippines).

Experience: 5+ years in accounting, preferably with experience in US GAAP or international reporting.

M&A Mindset: You don't just "do the math"—you understand what the numbers mean for a business's valuation.

Tech-Savvy: Expert-level proficiency in QuickBooks Online, Xero, and Excel.

Reliable: Since this is a fully asynchronous role, you must be a self-starter who communicates proactively.

Why Work With Us?

True Flexibility: No "required hours." Work whenever you are most productive.

Stability: This is a full-time, long-term position within a growing portfolio.

Competitive Salary: Paid in USD, bi-monthly.

Growth: Exposure to various industries and the inner workings of business acquisitions.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0007
Controller Execution Time ( Jobseekers / Job )  0.0147
Total Execution Time  0.0160
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,475,912 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/Senior-Portfolio-CPA-100-Remote-Fully-Flexible-Hours-1579303
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0089 seconds)  (Hide)
0.0004   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0009   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1579303
 LIMIT 1 
0.0009   SELECT *
FROM `employers`
WHERE `employer_id` = 904616
 LIMIT 1 
0.0010   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1579303
AND `misc`.`idIS NULL 
0.0005   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-04-13',ej.date_added) duration_daysDATEDIFF('2026-04-13',e.rebill_date) duration_rebillej.*, e.deactivate FROM employers eemployer_jobs ej WHERE e.employer_id ej.employer_id AND
                                   ((
e.user_level >= '500' AND ej.date_added <= e.rebill_date)
                                   OR 
e.employer_id '' OR (ej.date_approved <> '2000-01-01' and DATEDIFF('2026-04-13',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1579303' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1579303 
0.0007   UPDATE employer_jobs SET hit_counts '***Feb-13-2026=54***Feb-14-2026=120***Feb-15-2026=56***Feb-16-2026=66***Feb-17-2026=26***Feb-18-2026=10***Feb-19-2026=15***Feb-20-2026=8***Feb-21-2026=8***Feb-22-2026=2***Feb-23-2026=19***Feb-24-2026=13***Feb-25-2026=20***Feb-26-2026=10***Feb-27-2026=5***Feb-28-2026=5***Mar-01-2026=3***Mar-02-2026=13***Mar-03-2026=12***Mar-04-2026=7***Mar-05-2026=7***Mar-06-2026=9***Mar-07-2026=5***Mar-08-2026=1***Mar-09-2026=3***Mar-10-2026=2***Mar-11-2026=2***Mar-12-2026=2***Mar-13-2026=1***Mar-14-2026=1***Mar-16-2026=11***Mar-17-2026=3***Mar-18-2026=1***Mar-19-2026=5***Mar-20-2026=1***Mar-21-2026=7***Mar-23-2026=1***Mar-25-2026=1***Mar-26-2026=3***Mar-27-2026=2***Mar-29-2026=1***Mar-30-2026=2***Mar-31-2026=1***Apr-01-2026=5***Apr-02-2026=2***Apr-03-2026=1***Apr-05-2026=1***Apr-06-2026=1***Apr-08-2026=1***Apr-10-2026=1***Apr-13-2026=2' WHERE job_id'1579303'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Feb-2026=437***Mar-2026=107***Apr-2026=14' WHERE job_id'1579303'  
0.0009   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id '' AND job_id '1579303' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1579303 
0.0011   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '904616'
AND `date_added` >= '2022-06-08' 
0.0011   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)