The Chrome team is looking to reduce power utilization on mobile phones when using the browser. How would you go about solving this problem?
+2 votes
in Technical by (1.2k points) | 692 views

1 Answer

+2 votes

Here is the approach that I will follow to answer this question.
A. Brainstorm reasons why chrome browser typically causes high battery drainage
B. Come up with potential solutions (either voluntary – requiring user input or involuntary – happening behind the scenes without user input) that can help reduce battery drainage.

The things that usually drain the battery power of devices using chrome browsers are:
1. Having multiple tabs open (one or two is ok but on mobile phones, people typically end up keeping multiple tabs open)
2. Having a lot of chrome extensions (while it is tempting to get the next new extension, these drain battery power)
3. Having chrome continue to run in the background (even when you have closed your chrome browser- it may continue to run in the background)
4. Google drive offline access – One of the tools that Chrome uses is Google Drive. Running Google Drive in offline mode drains battery.
5. Many of the demanding and battery draining elements on a page require a Plug in – such as Adobe Flash – Disabling Flash and making plug-ins – click to play usually help with battery drainage
6. Using older versions of Chrome (Newer versions are usually much more efficient and require less battery power)
7. Large images, CSS, JS etc on a web page probably require a lot of battery power as well for the browser to load


When someone opens and uses chrome on a mobile phone – they could be reminded to
a) suspend tabs (especially when its not one that has live chat open) (voluntary) or Chrome could have a setting where a user can opt to have unused static tabs be suspended or closed after a period of time (involuntary).

b) Chrome extensions – Depending on the make and model of phone and assessing the battery power left, Chrome could automatically disable extensions that are high battery draining and are low usage by the user. (Involuntary). When a user tries to download an extension that might cause high battery usage- chrome can warn them about the impact to the battery usage.

c) Google Drive offline access – Same here. Google Drive offline access could be closed automatically by Chrome when not required.

d) Adobe Flash/ Plug-ins – Chrome could warn users against installing flash and other plug ins which cause high battery drain. The Chrome team could recommend/offer alternatives to Adobe Flash/external plug ins which cause lower battery utilization
e. Users of android phones/Google pixel could be auto updated to latest versions of Chrome that are more battery efficient

f. Large images/CSS/JS – Depending on the type of content being viewed or rendered – images/videos/audio – different compression methodologies can be used to reduce impact on battery drainage. Better caching can be done to reduce server calls and battery usage. This can be done specifically when the phone has low battery.

And of course running Chrome in the background – Chrome should either prompt users to kill chrome or have a setting up front to kill Chrome if it has been running for X number of days without being used.

In the end – I will need to prioritize all of these features based on impact on battery drainage and ease of implementation. In the interview, this may be a great opportunity to have a discussion with the person asking the question and determine whats easy vs hard. This is also a great time to discuss how to test some of these to check impact on battery power as well as usability of chrome, what metrics would we measure in addition to just impact on battery?

This is how I would prioritize:
I would assume that all the features where chrome could ask the user to do something – disable plug in, disable extensions, disable Google drive, suspend tabs, update to latest version of Chrome could be done easily.
The involuntary actions might cause some disruption to users or may require some more thought so as to not cause unnecessary disruption.
The image/video/audio compression during browser rendering might be harder and may be the last one we prioritize.
Hi NabsPM

Thank you for submitting your answer to this question. I think the answer does a great job of breaking down the problem into a few root causes and then solving for each root cause. The interviewer can tell by your answer that you have some technical and problem solving skills. They might ask a few “why” questions for each root cause to evaluate the depth of your knowledge (e.g. why does a Chrome extension cause battery drainage?).

I think your solutions are also very relevant to the problems you’ve listed earlier. My guess from your response is that you knew how to do the evaluation of the solutions in a more detailed format if needed. If it was in an interview, I would have used a table to evaluate and prioritize the solutions.

I would have also added one more criteria to the evaluation of the solutions – impact on the user. This is especially important in cases where the user is required to complete a task to achieve battery drainage reduction.

Also, one more solution I would have considered would be launching a “battery settings” feature under Chrome where it enables user to bring some of your ideas together and adjust chrome settings according to thr user’s preferred behavior and needs. For example, suspending tabs or extensions can become a setting in this section (e.g. close a tab that hasn’t been used for x days, turn off an extension I haven’t used after y days, etc)

Really like the “suspend” tabs idea!

Post answer and get feedback

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
To avoid this verification in future, please log in or register.