Mozilla: Q&A, Firefox/Gecko Codebase and Spying (Glean)
-
I’m a (senior) staff engineer panel
Last week, my colleague Chenxia Liu and I arranged a panel at our Berlin all-hands meeting called AMA: I’m a (senior) staff engineer. Our goal for this panel was to provide a Q&A session where staff and senior staff engineers could share their stories what that a typical day in that role looks like, how their career progressed to that level and their advice for others interested in the role.
[...]
Everyone company’s career ladder for individual contributors is different. At Mozilla, the change for senior engineer to staff engineer is the progression where the role changes to be substantially more self-directed. You aren’t just landing code to address issues identified by your manager or peers. Your role is to determine what problems the team should focus on. What value will solving these problems bring to the business? How can you elevate the work of your team from a technical perspective? How can you level the skills of early career engineers on your team? As a result, the promotion to staff engineer requires promotion paperwork to be approved by higher level of management than the individual’s direct manager.
Ahead of the panel, we reached out to five staff or senior staff engineers and asked them to participate. We reached out to people from several geographies and domains of expertise within the company and also different demographics. The day before panel, Chenxia arranged a lunch with the panellists so we could share the logistics of the panel, proposed initial questions and allow the panellists to get to know each other a bit before the session. We also shared a doc in a company wide channel where attendees could add questions before the session.
-
ESLint now turned on for all of the Firefox/Gecko codebase
About 4 years and 2 months ago, Dave Townsend and I landed a couple of patches on the Mozilla codebase that kick-started rolling out ESLint across our source code. Today, I’ve just landed the last bug in making it so that ESLint runs across our whole tree (where possible).
ESLint is a static analyser for JavaScript that helps find issues before you even run the code. It also helps to promote best practices and styling, reducing the need for comments in reviews.
Several Mozilla projects had started using ESLint in early 2015 – Firefox’s Developer Tools, Firefox for Android and Firefox Hello. It was clear to the Firefox desktop team that ESLint was useful and so we put together an initial set of rules covering the main desktop files.
Soon after, we were enabling ESLint over more of desktop’s files, and adding to the rules that we had enabled. Once we had the main directories covered, we slowly started enabling more directories and started running ESLint checks in CI allowing us to detect and back out any failures that were introduced. Finally, we made it to where we are today – covering the whole of the Firefox source tree, mozilla-central.
Along the way we’ve filed over 600 bugs for handling ESLint roll-out and related issues, many of these were promoted as mentored bugs and fixed by new and existing contributors – a big thank you to you all for your help.
-
Extending Glean: build re-usable types for new use-cases
The philosophy of Glean has always been to offer higher-level metric types that map semantically to what developers want to measure: a Timespan metric type, for instance, will require developers to declare the resolution they want the time measured in. It is more than just a number. The build-time generated APIs will then offer a set of operations, start() and stop(), to allow developers to take the measurements without caring about the implementation details or about the consistency of times across platforms. By design, a Timespan will record time consistently and predictably on iOS, Android and even desktop. This also empowers the rest of the Glean ecosystem, especially pipeline and tooling, to know about the quality guarantees of the types, their format and, potentially, ways to aggregate and visualize them.
- Login or register to post comments
- Printer-friendly version
- 3295 reads
- PDF version
More in Tux Machines
- Highlights
- Front Page
- Latest Headlines
- Archive
- Recent comments
- All-Time Popular Stories
- Hot Topics
- New Members
digiKam 7.7.0 is releasedAfter three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release. |
Dilution and Misuse of the "Linux" Brand
|
Samsung, Red Hat to Work on Linux Drivers for Future TechThe metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world. Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility. |
today's howtos
|
Recent comments
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago