Finance & Analytics Virtual Assistant

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

TYPE OF WORK

Part Time

WAGE / SALARY

$500-$1000/month

HOURS PER WEEK

30

DATE UPDATED

Jun 9, 2026

JOB OVERVIEW

We run two fast-growing companies in the online education space and need one sharp, finance-specialist VA to own the numbers end to end — company and personal. You’ll be the person who always knows what’s in the account, what’s owed, what’s going out, and what it means for next month.
This is a hands-on finance role for someone who lives in spreadsheets and is obsessive about a number being right. You will work deeply across the founder’s personal finances as well as the businesses — this is a high-trust seat.
WHAT YOU’LL OWN
• Daily cash position — every morning, a clean read of every bank + card account, across currencies (GBP primary)
• Invoicing — create, send, chase. Build and run the invoicing schedule.
• Collections — chase everything owed until it’s in. The fastest cash in the business.
• Paying invoices + running payroll — you prepare and execute, always under owner approval (nothing moves without sign-off)
• Card + account consolidation — one clean source of truth across Wise, Revolut, Chase, Amex
• Client cost pass-throughs — track recoverable software costs and recharge clients
• Reporting — weekly cash-flow forecast, monthly P&L (company + per-client), software cost report, payroll actuals, debt register
WHERE YOU GO DEEP
• Founder’s personal finances — full ownership of personal accounts, spending and budget, same rigour as the company
• Investments — track positions and performance, report, and model scenarios (you analyse and present; the owner d ---------- )
• Debt elimination — map every debt, build a prioritised payoff plan, run it, report progress
• Profit + cost analysis — separate real profit from paper profit; show where money leaks and where to cut
• Client profit, cost & forecasting — per-client analysis and forward projections so decisions run on numbers
YOU’RE A FIT IF YOU
• Specialise in finance/bookkeeping — this is your field, not a side skill
• Are advanced in Google Sheets / Excel — formulas, trackers, dashboards, forecasting models
• Are comfortable with multi-currency, P&L, cash flow, cost analysis and accounting basics
• Are detail-obsessed — a wrong number bothers you more than anyone
• Are proactive — you send the report before you’re asked
• Have excellent English and can overlap UK business hours for the morning report
• Can be trusted with sensitive financial access — company and personal
DETAILS
• Part-Full time · $500–1,000/month USD, based on experience
• Paid one-week trial, then locked in
• Start within 7 days

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0008
Controller Execution Time ( Jobseekers / Job )  0.0604
Total Execution Time  0.0619
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,501,936 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/finance-analytics-virtual-assistant-1665125
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0547 seconds)  (Hide)
0.0003   SELECT *
                                
FROM exrates
                                WHERE rate_name 
'USD-PHP' 
0.0009   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1665125
 LIMIT 1 
0.0003   SELECT *
FROM `employers`
WHERE `employer_id` = 739178
 LIMIT 1 
0.0475   SELECT COUNT(DISTINCT t.id) as cnt
FROM 
`t_thread` `t`
INNER JOIN `t_message` `mON `t`.`id` = `m`.`thread_id`
INNER JOIN `t_message_employer` `eON `m`.`id` = `e`.`message_id`
LEFT JOIN `t_thread_misc` `miscON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1665125
AND `misc`.`idIS NULL 
0.0006   SELECT e.business_namee.logoe.websitee.rebill_datee.date_added member_datehitsDATEDIFF('2026-06-28',ej.date_added) duration_daysDATEDIFF('2026-06-28',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-06-28',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != AND ej.deleted AND job_id '1665125' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1665125 
0.0008   UPDATE employer_jobs SET hit_counts '***Jun-09-2026=295***Jun-10-2026=237***Jun-11-2026=55***Jun-12-2026=34***Jun-13-2026=24***Jun-14-2026=22***Jun-15-2026=28***Jun-16-2026=13***Jun-17-2026=14***Jun-18-2026=10***Jun-19-2026=3***Jun-20-2026=3***Jun-21-2026=12***Jun-22-2026=6***Jun-23-2026=15***Jun-24-2026=10***Jun-25-2026=7***Jun-26-2026=6***Jun-27-2026=1***Jun-28-2026=1' WHERE job_id'1665125'  
0.0006   UPDATE employer_jobs SET monthly_hits '***Jun-2026=796' WHERE job_id'1665125'  
0.0003   SELECT date_sent
                FROM 
`jobseeker_sent_emails`
                
WHERE jobseeker_id NULL
                  
AND job_id 1665125
                  
AND status LIKE 'sent%'
                
ORDER BY id DESC
                LIMIT 1 
0.0002   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `scON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1665125 
0.0023   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '739178'
AND `date_added` >= '2022-06-08' 
0.0003   select from teasers 
0.0002   SELECT FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)