University: 2013 Platform Engineering Intern
Mountain View, CA, United States
Development is also completely open, you can talk about everything you work on at any time on your resume, your blog, or anywhere else.
The Mozilla Platform ("Gecko") contains everything needed to render, run and access web content. The platform is the engine that drives Firefox on the desktop and Android, as well as Boot To Gecko.
More details on teams and the projects they work on are available at: https://wiki.mozilla.org/Platform/Teams
* C/C++ development experience - a sample interview question might be "explain what a guard object is and how you use it."
* Algorithms - a sample interview question might be "How do you find the number of unique values in an array? I.e. not how often each of the values occur, just how many different values there are."
* Written and verbal communication skills - you'll be on IRC, participating in mailing lists
* If you have experience with open source projects, send links to your projects/patches/etc.
Below are the 10 teams you will likely join:
At Mozilla our accessibility engineers solve some of the most complex and interesting technical problems on the web -- whether it is designing a mobile accessibility solution for Firefox on Android, or perhaps modifying a Levenshtein distance algorithm to compute text change events asynchronously. They have the enviable opportunity to work not only on our accessibility engine, but poke around in different parts and layers of the browser on all platforms including Linux, Windows, OSX, Android, and whatever is coming next. They do this because the web is for everyone, and that idea is central to the Mozilla mission.
Our Audio/Video team is primarily responsible for the HTML5 and elements and all the infrastructure they require --- codec development and integration, playback engine, audio processing, synchronization, subtitles, etc. Supporting high-quality playback across a broad range of devices is hard! We're also involved in promoting the use of non-patent-encumbered codecs. We're branching out into other kinds of real-time media processing such as APIs for applying effects to real-time media streams. We're also moving into two-way real-time communication (WebRTC).
This work needs a very broad range of skills, from API design down to very low-level performance tuning, but signal processing and real-time development expertise is especially useful here.
Mozilla's graphics team comprises tenacious developers who regularly delve into a problem at multiple levels of abstraction. We produce the parts of Gecko that draw content on screen; our code draws 2D content both in software and hardware, and we're also responsible for image decoding. Our focus is writing fast, lightweight and maintainable code to make Firefox great for users.
We're looking for C++ developers who can also look at a disassembly and reason about its performance. The right person will be unafraid to fix bugs in other libraries, and won't rest until she's found a problem's true root cause. Most of all, we're looking for people to help us find ways to make web browsers fast using GPUs.
The layout team is responsible for implementing CSS layout and rendering. We're constantly adding new features for Web developers, improving our standards compliance, and contributing to the development of new standards. We're also working on improving performance and making Web content more beautiful.
This team is responsible for networking protocols (e.g. HTTP, FTP, SPDY), network security (e.g. SSL/TLS, certs), and network caches (disk and memory). We're always looking to improve performance, security, and reliability. Particular challenges include mobile environments and new and evolving threats to security.
The performance team optimizes Firefox startup & shutdown, UI responsiveness, I/O patterns, memory overhead, etc. We use the Telemetry (http://telemetry.mozilla.org/) reporting system to identify performance problems and verify optimizations. Data mining techniques are used to extract performance trends from Telemetry data.
You should apply if you're interested in understanding how software behaves in the "real world" and you have a good grasp of low-level software engineering concepts or data analytics.
Prior experience with big data, kernels, compilers, profiling, browser hacking is a plus.
10. Web API
The WebAPI team focuses on finding what's missing from the web today and designs ways to expose the missing features to web pages and applications. The primary goal for the team is to eliminate the gap between what's currently doable in native applications on existing operating systems (Windows, OSX, Android, etc) and the web. This means everything from exposing device specific functionality in a web friendly way to innovating on what developer features are critical for moving the web to the next level again and again. This team does a lot of API design, collaboration with other interested parties, and a lot of prototyping of new APIs and functionality.
Mozilla is a thriving community of intelligent, principled and passionate individuals who build software to preserve choice, openness, and innovation on the Internet. We work in the open on hard problems to ensure that the future of the Web is not dominated by large corporate interests, but driven by the idea that individual users should always be in control or their online lives. Join us!
We Are Global
- 500+ paid staff from over 30 countries and 25 US states
- Thousands of active contributors across six continents
- Nine principal offices: Mt. View, San Francisco, Vancouver, Toronto, Auckland, Paris, London, Beijing, Taipei
- Hundreds of home offices around the world
And so are our benefits...
- Competitive pay
- Great health coverage
- Travel and conference budgets
- Ability to work using the latest hardware and software of your choice
- Dozens of technical brownbags and invited speakers each month
Because we love what we do!
- We take bold technical leaps
- We code in the open and we ship in the open
- We directly impact over 450 Million users
- We build technology for the benefit of the Web's users and creators
- We work in a culture defined by principles over profits