Intro
You have reached
Rakina Zata Amni's personal website.
I'm currently a
Staff Software Engineer at
Google,
working on Chrome's Security Architecture team
(the team formerly known as
Site Isolation).
I have been a browser engineer since 2017, but I'm still not great at web development, so this site is just plain HTML and some CSS :)
Work stuff
Browser engineering @ Google Chrome (2017 - now)
I joined Google's Chrome team as a Software Engineer straight out of undergrad in 2017,
and became a Senior Software Engineer in 2020, and later on a Staff Software Engineer in 2023.
I love working on Chrome and the web platform, and have contributed to multiple areas, from the rendering pipeline to the navigation architecture to cross-browser web platform standardization.
One of the greatest part about working on an open source browser and the web platform is I can talk about most of it anywhere I want to!
So, here are some selected highlights: (Note: you can click the TL;DRs to expand/close details, thanks to the magic of HTML):
-
Navigation & Security Architecture (2020 - now)
TL;DR: Making Chrome's navigation architecture simpler and more secure!
-
Navigation is what happens when you instruct Chrome to go to a webpage, through clicking links, updating the adress bar, etc.
It feels simple, but see this great Chrome University video on how many things are involved in navigation!
-
I am one of the owners of the //content layer
(content/OWNERS)
in Chromium, responsible for the architecture of Chromium's //content layer (the 'core browser' part of Chromium, see also the
README),
what it exposes to embedders, etc.
-
As a member of the Chrome Security Architecture team and owner of navigation & BFCache code,
I also often guide engineers and teams needing help with navigation.
If you are changing code in that area, please feel free to send the CL to me, or ask questions to navigation-dev@chromium.org!
-
I have been working on reducing the dependency of Chrome's browser process on the untrusted renderer process on navigations.
See also my BlinkOn Lightning Talk
(and the slides),
where I explain this project through Spongebob memes in front of 100+ people (virtually, thanks COVID!)
-
I am also working on RenderDocument, a large refactoring/rearchitecturing project that improves the representation of frames and documents in the browser process.
-
TL;DR: Caching pages for instant back/forward navigation.
-
With this feature, Chrome can cache pages that you recently visit to allow instant back/forward navigation to them.
See this web.dev article
and my
n (with English subs) video on what that means!
-
I was one of the main engineers that helped implement & ship the initial version of Back/Forward Cache,
and I am one of the owners of BFCache in the codebase.
-
I improved the hit rate (page caching & restore rate) after shipping by more than 2x,
through investigating what's preventing caching and designing & implementing solutions for them!
The most notable one is adding same-site navigation support.
-
I'm actively leading the standardization of back/forward cache.
Back/Forward Cache exists in Chrome, Firefox, and Safari, and we want BFCache's interaction with web pages to be interoperable.
Also, most existing web platform features used to not define what happens to them when a webpage using them is cached,
lowering the hit rate or even causing undefined behavior. We are actively fixing those specifications.
I've also updated W3C's Design Principles doc to add BFCache considerations,
so that future web platform APIs are designed with back/forward cache in mind!
-
TL;DR: Lazy rendering for webpage contents outside of the browser's viewport.
-
CSS feature to allow browsers not render parts of a webpage that are not visible to the user, saving a lot of rendering cost! (80% in the article below)
See this web.dev article on what that means!
-
I was one of two main engineers that helped implement & ship the feature.
I designed and implemented the CSS pipeline optimizations that's needed to save rendering cost,
made it work with various features like find-in-page,
and helped parts of the standardization.
-
Fun fact: The project went through various renames and API redesign, including: Find-in-page API -> Searchable Invisible DOM -> Display Locking, rendersubtree -> content-visibility. Fun times!
-
Web Platform Standards (2017 - now)
TL;DR: Interoperability on back/forward cache, focus, and weird parts of session history and navigation.
-
I have represented Google in various web platform standard bodies (W3C, WHATWG, CSSWG), in online (Github, etc) and offline (TPAC, etc) standards discussions.
I have improved the state of standardization and interoperability for various web platform features, impacting Chrome, Firefox, Safari, and other browsers!
-
I'm actively leading the standardization of back/forward cache.
See the Back/Forward Cache section of this page for more details.
-
I helped improve the specification for focus in the HTML standard, which wasn't in a good state and not ready for additions like WebComponents.
See my WHATWG Blog post about it!
-
I standardized, implemented and shipped
Constructable Stylesheets,
which allows for lightweight styling of ShadowDOM with reusable CSS objects.
-
Related to my navigation work, I like to standardize weird corner cases related to session history and navigation that I encounter, like the initial empty document.
See also my BlinkOn Lightning Talk
(and the slides),
where I try to explain the horrors of doing so.
Older work stuff
When I was an undergrad in University of Indonesia (2013 - 2017), I tried multiple internships and part-time jobs:
-
Part-time Software Engineer at Traveloka in Jakarta (Indonesia), Jan-Aug 2017.
Worked on the Accomodation team on backend services for the Hotel product.
-
Software Engineering Intern at Google in Mountain View (CA, USA), Jun-Aug 2016.
Worked on a Natural Language Generation data collection system for a Research & Machine Intelligence team.
-
Software Engineering Intern at Square in San Francisco (CA, USA), Jul-Sep 2015.
Worked on a marketing & recommendation system for the Caviar team.
-
Software Engineering Intern at GDP Labs in Jakarta (Indonesia), Jan-Feb 2015.
Worked on deploying a CI/CD system with an automatic vulnerability scanner.
If you are a CS student interested in doing software engineering internships but don't know how to even start, I felt the same way a couple years ago too!
So, I wrote a
hopefully-still-relevant guide on how to approach it.
Feel free to
shoot me questions after you read them.