Senior Frontend Engineer, Ads Creative
- Status
- Open
- Remote policy
- Remote
- Employment type
- Not stated
- Salary
- 190,800-267,100 USD / year
- Categories
- Ads Product & Engineering
- Source
- First observed
- 2026-09-03 01:31 UTC
- Last seen
- 2026-10-18 01:55 UTC
- Source claims posted
- 2026-09-02 23:54 UTC
- Consecutive misses
- 0 of 3
What the posting says
Reddit is a community of communities. It’s built on shared interests, passion, and trust, and is home to the most open and authentic conversations on the internet. Every day, Reddit users submit, vote, and comment on the topics they care most about. With 100,000+ active communities and approximately 130 million daily active unique visitors, Reddit is one of the internet’s largest sources of information. For more information, visit www.redditinc.com.
Team Description
The Ads Creative & Recommendations team makes it easier for advertisers to maximize performance on Reddit through relevant creative and actionable recommendations.
We own the advertiser-facing workflows where creative, recommendations, and campaign creation come together.
Our goal is to reduce blank-canvas work and help advertisers move from an idea to an effective campaign with less friction. We build unified experiences that give advertisers useful context, evidence-backed guidance, and the ability to refine the system’s suggestions.
Role Description
We’re looking for a senior frontend engineer with deep JavaScript, TypeScript, and React experience to help shape the next generation of Reddit’s advertiser tools.
You’ll independently own complex and sometimes ambiguous areas of the product, from technical design through launch and iteration. You’ll work closely with product, design, data science, machine learning, and backend engineering to turn sophisticated capabilities into workflows that feel simple and dependable.
This role is a strong fit for someone who cares about both the architecture behind a frontend system and the details that make a product intuitive, fast, accessible, and maintainable.
Responsibilities
Own the technical design and delivery of complex frontend features across Ads Manager’s creative and recommendation workflows.
Translate AI-backed capabilities into interfaces that advertisers can understand, steer, and refine.
Partner with product and design to work through ambiguous requirements and make sound product and engineering tradeoffs.
Develop reusable frontend patterns and components that support a unified campaign creation experience.
Instrument experiences, evaluate results, and use experiments and product data to guide iteration.
Raise the quality of the codebase through thoughtful architecture, testing, observability, performance work, and accessibility.
Provide high-quality code reviews and technical guidance, and help other engineers grow.
Collaborate across frontend, backend, data, and machine learning systems to deliver reliable end-to-end experiences.
Required Qualifications
5+ years of experience building production web applications with JavaScript, TypeScript, and React.
Comfort using Codex, Cursor, Claude, or comparable agentic coding tools in day-to-day software development.
A track record of independently delivering complex frontend projects from technical design through launch and iteration.
Sound judgment in frontend architecture, state management, component design, testing, and API integration.
Experience building polished user interfaces with close attention to usability, performance, accessibility, and maintainability.
Ability to work effectively through ambiguous product and technical problems.
Strong communication and collaboration skills across engineering, product, design, and data disciplines.
Experience using instrumentation, experimentation, or product metrics to understand and improve user experiences.
A habit of improving engineering quality through code reviews, documentation, and technical mentorship.
Bonus points
Experience building advertising, campaign management, creative tooling, or other complex business applications.
Experience designing interfaces for generative AI, machine learning, or recommendation systems.
Familiarity with asset management, media upload, image editing, creative versioning, or content generation workflows.
Experience building or contributing to shared component libraries and design systems.
Experience improving large frontend codebases through architecture, performance, testing, or accessibility work.
Technologies used on the team include
JavaScript, Typescript and React
Modern frontend testing, experimentation, and observability tools
Benefits:
Comprehensive Healthcare Benefits and Income Replacement Programs
401k Match
Family Planning Support
Gender-Affirming Care
Mental Health & Coaching Benefits
Flexible Vacation & Reddit Global Days Off
Generous paid Parental Leave
Paid Volunteer time off
#li-remote
Pay Transparency:
This job posting may span more than one career level.
In addition to base salary, this job is eligible to receive equity in the form of restricted stock units, and depending on the position offered, it may also be eligible to receive a commission. Additionally, Reddit offers a wide range of benefits to U.S.-based employees, including medical, dental, and vision insurance, 401(k) program with employer match, generous time off for vacation, and parental leave. To learn more, please visit https://www.redditinc.com/careers/.
To provide greater transparency to candidates, we share base salary ranges for all US-based job postings regardless of state. We set standard base pay ranges for all roles based on function, level, and country location, benchmarked against similar stage growth companies. Final offer amounts are determined by multiple factors including, skills, depth of work experience and relevant licenses/credentials, and may vary from the amounts listed below.
The base salary range for this position is:
$190,800—$267,100 USD
In select roles and locations, the interviews will be recorded, transcribed and summarized by artificial intelligence (AI). You will have the opportunity to opt out of recording, transcription and summarization prior to any scheduled interviews.
During the interview, we will collect the following categories of personal information: Identifiers, Professional and Employment-Related Information, Sensory Information (audio/video recording), and any other categories of personal information you choose to share with us. We will use this information to evaluate your application for employment or an independent contractor role, as applicable. We will not sell your personal information or disclose it to any third party for their marketing purposes. We will delete any recording of your interview promptly after making a hiring decision. For more information about how we will handle your personal information, including our retention of it, please refer to our Candidate Privacy Policy for Potential Employees and Contractors.
Reddit is proud to be an equal opportunity employer, and is committed to building a workforce representative of the diverse communities we serve. Reddit is committed to providing reasonable accommodations for qualified individuals with disabilities and disabled veterans in our job application procedures. If, due to a disability, you need an accommodation during the interview process, please let your recruiter know.
Quality
- + Salary range stated weight 35%
- + Remote policy stated weight 20%
- + Location stated weight 15%
- + Organisation stated weight 15%
- + Publication date stated weight 15%
Based on 94 observation(s).
- + Days open - fineOpen for 45 days so far
- + Reopen count - fineNever reopened
- + Salary range removed after publication - fineSalary range has not been removed since publication
- + Salary range narrowed - fineSalary range has not narrowed since publication
- + Missing/reappear cycles - fineNo missing-then-reappeared cycles observed
Timeline
-
*
#538734 2026-09-03 01:31 UTCPublished
-
~
#549592 2026-09-03 13:31 UTCModified
-
source_updated_at
2026-09-02T20:11:50-04:00->2026-09-03T08:16:24-04:00
-
source_updated_at
-
~
#561670 2026-09-04 01:32 UTCModified
-
source_updated_at
2026-09-03T08:16:24-04:00->2026-09-03T20:07:27-04:00
-
source_updated_at
-
~
#570871 2026-09-04 13:32 UTCModified
-
source_updated_at
2026-09-03T20:07:27-04:00->2026-09-04T08:19:27-04:00
-
source_updated_at
-
~
#581897 2026-09-05 01:36 UTCModified
-
source_updated_at
2026-09-04T08:19:27-04:00->2026-09-04T20:29:22-04:00
-
source_updated_at
-
~
#588696 2026-09-05 13:36 UTCModified
-
source_updated_at
2026-09-04T20:29:22-04:00->2026-09-05T08:21:04-04:00
-
source_updated_at
-
~
#596763 2026-09-06 03:43 UTCModified
-
source_updated_at
2026-09-05T08:21:04-04:00->2026-09-05T20:14:32-04:00
-
source_updated_at
-
~
#604581 2026-09-06 15:43 UTCModified
-
source_updated_at
2026-09-05T20:14:32-04:00->2026-09-06T08:17:10-04:00
-
source_updated_at
-
~
#610878 2026-09-07 03:44 UTCModified
-
source_updated_at
2026-09-06T08:17:10-04:00->2026-09-06T20:08:38-04:00
-
source_updated_at
-
~
#618703 2026-09-07 15:48 UTCModified
-
source_updated_at
2026-09-06T20:08:38-04:00->2026-09-07T08:16:21-04:00
-
source_updated_at
-
~
#628366 2026-09-08 03:48 UTCModified
-
source_updated_at
2026-09-07T08:16:21-04:00->2026-09-07T20:10:28-04:00
-
source_updated_at
-
~
#638138 2026-09-08 15:49 UTCModified
-
source_updated_at
2026-09-07T20:10:28-04:00->2026-09-08T08:19:10-04:00
-
source_updated_at
-
~
#649013 2026-09-09 03:51 UTCModified
-
source_updated_at
2026-09-08T08:19:10-04:00->2026-09-08T20:17:54-04:00
-
source_updated_at
-
~
#659151 2026-09-09 15:51 UTCModified
-
source_updated_at
2026-09-08T20:17:54-04:00->2026-09-09T08:26:08-04:00
-
source_updated_at
-
~
#669945 2026-09-10 04:05 UTCModified
-
source_updated_at
2026-09-09T08:26:08-04:00->2026-09-09T20:17:00-04:00
-
source_updated_at
-
~
#681339 2026-09-10 16:12 UTCModified
-
source_updated_at
2026-09-09T20:17:00-04:00->2026-09-10T08:23:30-04:00
-
source_updated_at
-
~
#685875 2026-09-10 20:12 UTCModified
-
source_updated_at
2026-09-10T08:23:30-04:00->2026-09-10T14:46:03-04:00
-
source_updated_at
-
~
#689517 2026-09-11 00:12 UTCModified
-
source_updated_at
2026-09-10T14:46:03-04:00->2026-09-10T20:07:27-04:00
-
source_updated_at
-
~
#699785 2026-09-11 13:19 UTCModified
-
source_updated_at
2026-09-10T20:07:27-04:00->2026-09-11T08:32:22-04:00
-
source_updated_at
-
~
#710505 2026-09-12 01:24 UTCModified
-
source_updated_at
2026-09-11T08:32:22-04:00->2026-09-11T20:15:56-04:00
-
source_updated_at
-
~
#716458 2026-09-12 13:24 UTCModified
-
source_updated_at
2026-09-11T20:15:56-04:00->2026-09-12T08:18:17-04:00
-
source_updated_at
-
~
#721927 2026-09-13 01:24 UTCModified
-
source_updated_at
2026-09-12T08:18:17-04:00->2026-09-12T20:36:16-04:00
-
source_updated_at
-
~
#729594 2026-09-13 13:24 UTCModified
-
source_updated_at
2026-09-12T20:36:16-04:00->2026-09-13T08:10:38-04:00
-
source_updated_at
-
~
#734953 2026-09-14 01:24 UTCModified
-
source_updated_at
2026-09-13T08:10:38-04:00->2026-09-13T20:17:19-04:00
-
source_updated_at
-
~
#742562 2026-09-14 13:30 UTCModified
-
source_updated_at
2026-09-13T20:17:19-04:00->2026-09-14T08:10:06-04:00
-
source_updated_at
-
~
#758330 2026-09-15 01:31 UTCModified
-
source_updated_at
2026-09-14T08:10:06-04:00->2026-09-14T20:11:55-04:00
-
source_updated_at
-
~
#768859 2026-09-15 13:32 UTCModified
-
source_updated_at
2026-09-14T20:11:55-04:00->2026-09-15T08:08:30-04:00
-
source_updated_at
-
~
#782403 2026-09-16 01:32 UTCModified
-
source_updated_at
2026-09-15T08:08:30-04:00->2026-09-15T20:14:49-04:00
-
source_updated_at
-
~
#791059 2026-09-16 13:32 UTCModified
-
source_updated_at
2026-09-15T20:14:49-04:00->2026-09-16T08:27:00-04:00
-
source_updated_at
-
~
#801140 2026-09-16 21:33 UTCModified
-
source_updated_at
2026-09-16T08:27:00-04:00->2026-09-16T14:06:36-04:00
-
source_updated_at
-
~
#804706 2026-09-17 01:33 UTCModified
-
source_updated_at
2026-09-16T14:06:36-04:00->2026-09-16T20:16:51-04:00
-
source_updated_at
-
~
#814019 2026-09-17 13:34 UTCModified
-
source_updated_at
2026-09-16T20:16:51-04:00->2026-09-17T08:26:34-04:00
-
source_updated_at
-
~
#824018 2026-09-18 01:44 UTCModified
-
source_updated_at
2026-09-17T08:26:34-04:00->2026-09-17T20:16:47-04:00
-
source_updated_at
-
~
#834919 2026-09-18 13:44 UTCModified
-
source_updated_at
2026-09-17T20:16:47-04:00->2026-09-18T08:33:33-04:00
-
source_updated_at
-
~
#854159 2026-09-19 01:45 UTCModified
-
source_updated_at
2026-09-18T08:33:33-04:00->2026-09-18T20:21:01-04:00
-
source_updated_at
-
~
#862113 2026-09-19 13:45 UTCModified
-
source_updated_at
2026-09-18T20:21:01-04:00->2026-09-19T08:21:01-04:00
-
source_updated_at
-
~
#869871 2026-09-20 01:50 UTCModified
-
source_updated_at
2026-09-19T08:21:01-04:00->2026-09-19T20:15:01-04:00
-
source_updated_at
-
~
#877612 2026-09-20 13:50 UTCModified
-
source_updated_at
2026-09-19T20:15:01-04:00->2026-09-20T08:19:48-04:00
-
source_updated_at
-
~
#883886 2026-09-21 01:50 UTCModified
-
source_updated_at
2026-09-20T08:19:48-04:00->2026-09-20T20:07:16-04:00
-
source_updated_at
-
~
#894201 2026-09-21 13:51 UTCModified
-
source_updated_at
2026-09-20T20:07:16-04:00->2026-09-21T08:16:19-04:00
-
source_updated_at
-
~
#912694 2026-09-22 01:53 UTCModified
-
source_updated_at
2026-09-21T08:16:19-04:00->2026-09-21T20:22:24-04:00
-
source_updated_at
-
~
#922376 2026-09-22 13:55 UTCModified
-
source_updated_at
2026-09-21T20:22:24-04:00->2026-09-22T08:28:20-04:00
-
source_updated_at
-
~
#934590 2026-09-23 01:56 UTCModified
-
source_updated_at
2026-09-22T08:28:20-04:00->2026-09-22T20:11:08-04:00
-
source_updated_at
-
~
#946204 2026-09-23 14:02 UTCModified
-
source_updated_at
2026-09-22T20:11:08-04:00->2026-09-23T08:21:07-04:00
-
source_updated_at
-
~
#960176 2026-09-24 02:03 UTCModified
-
source_updated_at
2026-09-23T08:21:07-04:00->2026-09-23T20:16:41-04:00
-
source_updated_at
-
~
#970873 2026-09-24 14:03 UTCModified
-
source_updated_at
2026-09-23T20:16:41-04:00->2026-09-24T08:23:29-04:00
-
source_updated_at
-
~
#987523 2026-09-25 02:06 UTCModified
-
source_updated_at
2026-09-24T08:23:29-04:00->2026-09-24T20:18:54-04:00
-
source_updated_at
-
~
#998193 2026-09-25 14:11 UTCModified
-
source_updated_at
2026-09-24T20:18:54-04:00->2026-09-25T08:16:20-04:00
-
source_updated_at
-
~
#1010546 2026-09-26 02:15 UTCModified
-
source_updated_at
2026-09-25T08:16:20-04:00->2026-09-25T20:21:40-04:00
-
source_updated_at
-
~
#1017774 2026-09-26 14:20 UTCModified
-
source_updated_at
2026-09-25T20:21:40-04:00->2026-09-26T08:15:08-04:00
-
source_updated_at
-
~
#1025367 2026-09-27 02:20 UTCModified
-
source_updated_at
2026-09-26T08:15:08-04:00->2026-09-26T20:32:53-04:00
-
source_updated_at
-
~
#1032129 2026-09-27 14:20 UTCModified
-
source_updated_at
2026-09-26T20:32:53-04:00->2026-09-27T08:38:20-04:00
-
source_updated_at
-
~
#1038845 2026-09-28 02:28 UTCModified
-
source_updated_at
2026-09-27T08:38:20-04:00->2026-09-27T20:21:28-04:00
-
source_updated_at
-
~
#1046962 2026-09-28 14:28 UTCModified
-
source_updated_at
2026-09-27T20:21:28-04:00->2026-09-28T08:16:39-04:00
-
source_updated_at
-
~
#1057151 2026-09-29 02:28 UTCModified
-
source_updated_at
2026-09-28T08:16:39-04:00->2026-09-28T20:29:04-04:00
-
source_updated_at
-
~
#1068399 2026-09-29 14:36 UTCModified
-
source_updated_at
2026-09-28T20:29:04-04:00->2026-09-29T08:21:48-04:00
-
source_updated_at
-
~
#1083326 2026-09-30 02:43 UTCModified
-
source_updated_at
2026-09-29T08:21:48-04:00->2026-09-29T20:12:37-04:00
-
source_updated_at
-
~
#1091936 2026-09-30 14:43 UTCModified
-
source_updated_at
2026-09-29T20:12:37-04:00->2026-09-30T08:21:35-04:00
-
source_updated_at
-
~
#1103076 2026-10-01 02:44 UTCModified
-
source_updated_at
2026-09-30T08:21:35-04:00->2026-09-30T20:19:18-04:00
-
source_updated_at
-
~
#1109541 2026-10-01 10:45 UTCModified
-
source_updated_at
2026-09-30T20:19:18-04:00->2026-10-01T03:25:12-04:00
-
source_updated_at
-
~
#1114594 2026-10-01 14:49 UTCModified
-
source_updated_at
2026-10-01T03:25:12-04:00->2026-10-01T08:08:32-04:00
-
source_updated_at
-
~
#1125918 2026-10-02 02:59 UTCModified
-
source_updated_at
2026-10-01T08:08:32-04:00->2026-10-01T20:20:54-04:00
-
source_updated_at
-
~
#1137130 2026-10-02 15:26 UTCModified
-
source_updated_at
2026-10-01T20:20:54-04:00->2026-10-02T08:26:07-04:00
-
source_updated_at
-
~
#1148710 2026-10-03 03:48 UTCModified
-
source_updated_at
2026-10-02T08:26:07-04:00->2026-10-02T20:07:45-04:00
-
source_updated_at
-
~
#1156568 2026-10-03 15:54 UTCModified
-
source_updated_at
2026-10-02T20:07:45-04:00->2026-10-03T08:09:19-04:00
-
source_updated_at
-
~
#1165401 2026-10-04 03:55 UTCModified
-
source_updated_at
2026-10-03T08:09:19-04:00->2026-10-03T20:08:55-04:00
-
source_updated_at
-
~
#1171602 2026-10-04 15:55 UTCModified
-
source_updated_at
2026-10-03T20:08:55-04:00->2026-10-04T08:27:27-04:00
-
source_updated_at
-
~
#1177847 2026-10-05 03:59 UTCModified
-
source_updated_at
2026-10-04T08:27:27-04:00->2026-10-04T20:10:23-04:00
-
source_updated_at
-
~
#1186421 2026-10-05 14:45 UTCModified
-
source_updated_at
2026-10-04T20:10:23-04:00->2026-10-05T08:24:39-04:00
-
source_updated_at
-
~
#1192543 2026-10-05 22:46 UTCModified
-
source_updated_at
2026-10-05T08:24:39-04:00->2026-10-05T16:12:43-04:00
-
source_updated_at
-
~
#1196376 2026-10-06 02:15 UTCModified
-
source_updated_at
2026-10-05T16:12:43-04:00->2026-10-05T20:12:17-04:00
-
source_updated_at
-
~
#1208018 2026-10-06 14:29 UTCModified
-
categories
Not stated->Not stated -
source_updated_at
2026-10-05T20:12:17-04:00->2026-10-06T10:15:17-04:00
-
categories
-
~
#1214314 2026-10-06 18:29 UTCModified
-
source_updated_at
2026-10-06T10:15:17-04:00->2026-10-06T13:20:28-04:00
-
source_updated_at
-
~
#1224439 2026-10-07 02:42 UTCModified
-
source_updated_at
2026-10-06T13:20:28-04:00->2026-10-06T20:15:19-04:00
-
source_updated_at
-
~
#1234307 2026-10-07 14:48 UTCModified
-
source_updated_at
2026-10-06T20:15:19-04:00->2026-10-07T08:30:28-04:00
-
source_updated_at
-
~
#1246004 2026-10-08 02:49 UTCModified
-
source_updated_at
2026-10-07T08:30:28-04:00->2026-10-07T20:18:57-04:00
-
source_updated_at
-
~
#1255963 2026-10-08 15:01 UTCModified
-
source_updated_at
2026-10-07T20:18:57-04:00->2026-10-08T08:11:53-04:00
-
source_updated_at
-
~
#1267900 2026-10-09 03:07 UTCModified
-
source_updated_at
2026-10-08T08:11:53-04:00->2026-10-08T20:16:16-04:00
-
source_updated_at
-
~
#1275710 2026-10-09 12:27 UTCModified
-
source_updated_at
2026-10-08T20:16:16-04:00->2026-10-09T08:08:51-04:00
-
source_updated_at
-
~
#1288811 2026-10-10 03:58 UTCModified
-
source_updated_at
2026-10-09T08:08:51-04:00->2026-10-09T20:15:03-04:00
-
source_updated_at
-
~
#1295088 2026-10-12 13:22 UTCModified
-
source_updated_at
2026-10-09T20:15:03-04:00->2026-10-12T08:14:30-04:00
-
source_updated_at
-
~
#1311176 2026-10-13 01:08 UTCModified
-
source_updated_at
2026-10-12T08:14:30-04:00->2026-10-12T20:16:47-04:00
-
source_updated_at
-
~
#1319685 2026-10-13 13:09 UTCModified
-
source_updated_at
2026-10-12T20:16:47-04:00->2026-10-13T08:18:52-04:00
-
source_updated_at
-
~
#1334453 2026-10-14 01:10 UTCModified
-
source_updated_at
2026-10-13T08:18:52-04:00->2026-10-13T20:30:08-04:00
-
source_updated_at
-
~
#1343847 2026-10-14 13:52 UTCModified
-
source_updated_at
2026-10-13T20:30:08-04:00->2026-10-14T08:07:57-04:00
-
source_updated_at
-
~
#1346753 2026-10-14 17:52 UTCModified
-
source_updated_at
2026-10-14T08:07:57-04:00->2026-10-14T10:15:04-04:00
-
source_updated_at
-
~
#1352674 2026-10-15 01:53 UTCModified
-
source_updated_at
2026-10-14T10:15:04-04:00->2026-10-14T20:21:05-04:00
-
source_updated_at
-
~
#1361283 2026-10-15 13:53 UTCModified
-
source_updated_at
2026-10-14T20:21:05-04:00->2026-10-15T08:11:40-04:00
-
source_updated_at
-
~
#1364680 2026-10-15 17:53 UTCModified
-
source_updated_at
2026-10-15T08:11:40-04:00->2026-10-15T11:40:02-04:00
-
source_updated_at
-
~
#1370983 2026-10-16 01:53 UTCModified
-
source_updated_at
2026-10-15T11:40:02-04:00->2026-10-15T20:12:48-04:00
-
source_updated_at
-
~
#1378426 2026-10-16 13:54 UTCModified
-
source_updated_at
2026-10-15T20:12:48-04:00->2026-10-16T08:23:30-04:00
-
source_updated_at
-
~
#1387856 2026-10-17 01:54 UTCModified
-
source_updated_at
2026-10-16T08:23:30-04:00->2026-10-16T20:14:53-04:00
-
source_updated_at
-
~
#1394007 2026-10-17 13:54 UTCModified
-
source_updated_at
2026-10-16T20:14:53-04:00->2026-10-17T08:26:40-04:00
-
source_updated_at
-
~
#1399272 2026-10-18 01:55 UTCModified
-
source_updated_at
2026-10-17T08:26:40-04:00->2026-10-17T20:10:59-04:00
-
source_updated_at