2D Character Animation

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

TYPE OF WORK

Any

SALARY

$650 USD/month

HOURS PER WEEK

TBD

DATE UPDATED

Aug 26, 2026

JOB OVERVIEW

We’re looking for a skilled 2D Animator / Illustrator who can create end‑to‑end animated sequences without using AI tools. You will be responsible for designing original characters, props, and environments from scratch and bringing them to life in polished 2D animations synced tightly with audio and dialogue.

You should be comfortable owning the full creative pipeline: starting from a script or rough idea, designing character sets and visual assets, storyboarding key moments, animating scenes, and exporting final videos ready for use in our product and marketing.

Key Responsibilities

- Create fully original 2D characters, props, and backgrounds from scratch (no AI generation).

- Design consistent character sets, expressions, and poses suitable for animation.

- Animate characters, UI elements, and scenes with smooth motion, strong timing, and clear acting.

- Perform accurate lip sync to voiceover and dialogue, ensuring mouth shapes and expressions match the audio.

- Take scripts, rough concepts, or voice tracks and turn them into finished, production‑ready animations.

- Prepare and organize project files so they are easy to update and reuse.

Requirements

- Strong portfolio of 2D character animation and illustration created manually (no AI tools).

- Ability to design characters, props, and scenes in a consistent visual style.

- Proven experience with frame‑by‑frame or rig‑based 2D animation and lip sync.

- Proficiency with tools like After Effects, Toon Boom, TVPaint, or similar 2D animation software.

- Strong attention to detail and ability to follow timing and beats in audio.

- Reliable, responsive, and able to work independently with clear deadlines.

VIEW OTHER JOB POSTS FROM:
SHARE THIS POST
facebook linkedin
  BENCHMARKS  
Loading Time: Base Classes  0.0017
Controller Execution Time ( Jobseekers / Job )  0.0142
Total Execution Time  0.0166
  GET DATA  
No GET data exists
  MEMORY USAGE  
1,488,440 bytes
  POST DATA  
No POST data exists
  URI STRING  
jobseekers/job/2D-Character-Animation-1717374
  CLASS/METHOD  
jobseekers/job
  DATABASE:  onlinejobs (Jobseekers:$db)   QUERIES: 13 (0.0068 seconds)  (Hide)
0.0005   SELECT *
                                
FROM exrates
                                WHERE rate_name 
= 'USD-PHP' 
0.0004   SELECT *
FROM `employer_jobs`
WHERE `job_id` = 1717374
 LIMIT 1 
0.0005   SELECT *
FROM `employers`
WHERE `employer_id` = 556938
 LIMIT 1 
0.0004   SELECT COUNT(*) AS `numrows`
FROM `t_thread` `t`
LEFT JOIN `t_thread_misc` `misc` ON `t`.`id` = `misc`.`thread_id`
WHERE `t`.`job_id` = 1717374
AND `misc`.`id` IS NULL 
0.0005   SELECT e.business_name, e.logo, e.website, e.rebill_date, e.date_added member_date, hits, DATEDIFF('2026-09-24',ej.date_added) duration_days, DATEDIFF('2026-09-24',e.rebill_date) duration_rebill, ej.*, e.deactivate FROM employers e, employer_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-09-24',ej.date_added) <= 14 ))
                                   AND 
e.deactivate != 1 AND ej.deleted = 0 AND job_id = '1717374' 
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1717374 
0.0008   UPDATE employer_jobs SET hit_counts = '***Aug-26-2026=369***Aug-27-2026=83***Aug-28-2026=28***Aug-29-2026=16***Aug-30-2026=15***Aug-31-2026=15***Sep-01-2026=15***Sep-02-2026=16***Sep-03-2026=8***Sep-04-2026=5***Sep-05-2026=3***Sep-06-2026=6***Sep-07-2026=8***Sep-08-2026=5***Sep-09-2026=5***Sep-10-2026=4***Sep-11-2026=1***Sep-12-2026=4***Sep-13-2026=1***Sep-14-2026=7***Sep-15-2026=3***Sep-16-2026=2***Sep-17-2026=2***Sep-18-2026=2***Sep-19-2026=1***Sep-24-2026=2' WHERE job_id= '1717374'  
0.0009   UPDATE employer_jobs SET monthly_hits = '***Aug-2026=526***Sep-2026=100' WHERE job_id= '1717374'  
0.0010   SELECT date_sent FROM jobseeker_sent_emails WHERE jobseeker_id = '' AND job_id = '1717374' AND status LIKE 'sent%' ORDER BY id DESC  
0.0003   SELECT *
FROM `employer_jobs_skills` `ejs`
LEFT JOIN `skills_categories` `sc` ON `ejs`.`skill_id` = `sc`.`id`
WHERE `job_id` = 1717374 
0.0006   SELECT COUNT(*) AS `numrows`
FROM `employer_jobs`
WHERE `employer_id` = '556938'
AND `date_added` >= '2022-06-08' 
0.0003   select * from teasers 
0.0003   SELECT * FROM skill_categories WHERE skill_cat_id='' 
  HTTP HEADERS  (Show)
  SESSION DATA  (Show)
  CONFIG VARIABLES  (Show)