JavaScriptCore Security Engineer

Apple Inc.
Cupertino, CA, United States
3 months ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Compensation
$147,400.0 - $272,100.0
Working hours
Regular working hours
Job source

Tech stack

JavaScript (Programming Language) Application Programming Interfaces (APIs) Apple Products Compilers Cyber Security Computer Programming Software Debugging Fuzz Testing Web Browsers Parsing Web Application Security Virtual Machines
+5 more
WebKit Information Technology C++14 JVMs Programming Languages

Job description

In this role, you have the opportunity to help secure the JavaScriptCore virtual machine. The JavaScriptCore team at Apple is looking for system programmers with experience in security, especially in programming languages, compilers, and virtual machines. You will be working to deliver a more secure web for all Apple products both proactively, by ensuring new features are implemented securely, and reactively, by responding to and addressing JavaScriptCore’s unique security challenges. The work is challenging, and the impact and reach are large. Join us!, The JavaScriptCore team in WebKit is responsible for the JavaScriptCore engine, and our mission is to make JavaScript and WebAssembly execution both fast and secure. JavaScriptCore is complex, with many subsystems: the compilation pipeline, the language runtime, the garbage collector and memory allocators, and the API for native apps. These subsystems run untrusted, third-party code, and all of them must do so in a memory safe way.

In this role, you will work across all areas of the engine, focusing on improving security and stability. You will drive new innovations in the security architecture of the codebase. You will fix security issues and respond to fuzzing. You will also ensure that security processes in JavaScriptCore are updated to current best practices and set the project up for a secure future.

Requirements

Do you have experience in Debugging?, Do you have a Bachelor’s degree?, Hands-on experience with VMs with just-in-time compilers (e.g. JavaScript engines and JVMs)

Experience with web browsers

Experience with memory allocators and garbage collectors

Experience with fuzzing, security architecture, and memory safety

Knowledge of JavaScript and WebAssembly

Minimum Qualifications

BS in computer science or equivalent

Experience programming in modern C++

Excellent debugging, critical thinking, and communication skills

Experience developing privacy and security-sensitive software

Experience with compilers, parsers, and interpreters

Experience with assembly-level programming

Benefits & conditions

4.14.1 out of 5 stars Cupertino, CA $147,400 - $272,100 a year, Pulled from the full job description

  • Employee stock purchase plan
  • Health insurance
  • Retirement plan
  • Dental insurance
  • RSU, At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $147,400 and $272,100, and your base pay will depend on your skills, qualifications, experience, and location.

Apple employees also have the opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses - including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation. Learn more about Apple Benefits

Note: Apple benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on indeed.com

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

2:37 min

Optimizing container workloads with Quarkus and lightweight JVMs

Niklas Heidloff · LIVE

1:59 min

Configuring the browser speech recognition class and grammar

Tobias Münch Tobias Münch · WWC 2024

8:12 min

Lambda compatibility, interface security, and career advice

Alexander Günsche Alexander Günsche · LIVE

2:33 min

Expanding JavaScript horizons with WebAssembly and backend possibilities

Sasha Shynkevich · LIVE

2:49 min

Evaluating cross-browser support and persistent platform limitations

Nico Martin · LIVE

3:26 min

Retaining list semantics when modifying CSS counter styles

Chris Heilmann +2 · LIVE

Videos

See all

Related articles

See all