FB DS 面经

就是简单介绍+SQL+
SQL没写好。估计这次没戏了,因为最后她说take care。有点紧张,那白女讲话很快,有点不耐烦。就是问某一天send 出去的request的acceptance rate,我一开始以为她要面who has most friends…,紧张所以做的不对。

就是left join就可以,但是我忘了往回join了,只join了,应该是a.target_uid = b.send_id and b.target_uid = a.target_uid…

Product就是问Acceptance rate降了咋办。月末比月初低。这个应该答的问题不大。

请问怎么编辑之前的帖子啊? 想写在开头写不了。

后来那个猎头跟我说 面试官对我product回答非常满意,觉得我communication很好,所以给我一个SQL second screen。。。希望这次不要犯晕才好。
为了回馈大家。Proudct问了俩问题

  1. Product就是问Acceptance rate降了咋办
    我的思路是这样的
    首先开是不是降了。看year over year是不是去年同一周也一个情况,可能就是fatigue after holiday season啊。说不定最近DAU也低了,大家没有log in 怎么去respond呢。还有是不是每个月都是月末比月初低呢。有这个pattern不用太在意。
    还有就是rate降了多少,有没有significant change,比对前一周还有月初。值不值得worry
    可能request比同期多了,比如launch了新的feature,people you may know 在newsfeed,或者group participation 增多,network以外加人增多。或者career group,sales group这种人数曾多,不熟悉的人发request,acceptance rate就降了。反之notification/navigation变了不那么容易注意到friend request就没回这种
    还有就是确定了降了,看user segment谁少了。也是看engagement什么的有没有变化。
    第二个product问题就是people you may know on news feed (这个地里也有)
    我好像也是一个思路吧。measure friend request number per views per customer, acceptance rate.
    overall on FB, participation how much % of users exposed had interattion with this feautre
    how much % of friend request sent over through People you may know.这个数字有没有change over time grow and srink呢还是grow at slower rate呢
    还有就是不同age group,还有segments这些metrics是不是都一样的result
    最后就是别的feature有没有受影响。比如search friend,adjacent posts的comment like有没有受影响
    还有eventually 看看对retention有没有影响。time spend,number of friend, etc。

理解楼主心情,希望面试官能放你过。祝好运!

太郁闷了,以前面过一次。SQL完全没问题,onsite挂的

lz能详细讲下题目吗?

我不知道怎么编辑帖子啊。

date|actino| send_id| target_id

SQL题我一上来看acceptance rate还挺高兴,以为就是谁有最多friend那种题,其实就是找一天发的request看这些request的acceptance rate。 我以为是当天的,后来改成left join以后我只用 a.target_id = b.send_id 了。今天不知道为啥脑子有点沉。
正确答案很简单的
select sum(if(b.send_id is not null,1,0))/sum(if(a.action=’‘send’’,1,0)) as acceptance_rate
from friending a
left join friending b on b.action=’‘accept’’ and a.target_id=b.send_id and a.send_id = a.target_id
where a.date = ‘‘date’’

我不能说是sql大牛吧。但是我team的人都觉得我经验还很丰富,就是容易阴沟翻船啊。。。。

谢谢你 我今天不知道为啥有点紧张,可能昨晚睡的不好

求楼主分享下product答题思路

谢楼主,很简单明了!另外方便说一下楼主面的什么组吗?今天fb的recruiter说我投的ds (integrity)的hiring manager没给我面试。。。

我只是单纯的想回复,take care只是有些人的习惯寒暄用语罢了。。不用紧张

  1. Product就是问Acceptance rate降了咋办
    Metrics drop investigation question
    思路:Clarify assumptions => Math decomposition => Brainstorming framework => Statistical Analysis for Root cause => Recommendation for each issue

Clarify Assumption

  • NSM impact: We want better network quality - higher engagement on FB
  • Metrics recipe: Denominator is accept, Numerator is request. Each part can move both direction. Need to know which part change.
  • Product details: PPL can send request by search and recommendation.

Brainstorming Framework

  • Normal Seasonality: YoY, MoM trend
  • Internal Investigation
    • User segment: Which users? New? old? segmentation?
    • Which product: recommendation or search?
    • Vertical Funnel: View drop? More request? More refuse?
    • Horizontal Product: How about IG?
  • External Investigation
    • DAU Accounting: New users increase a lot causing that? DAU drop causing low response?
    • Holiday, big event: any news, holiday need to be aware of?

Statistical Analysis for Root Cause

  • Seasonality: Check YoY, MoM => If no issue
  • Holiday: Same as above
  • Internal: Identify the segment, product funnel, action => analyze data more
  • External: % of non-accepted request by new user. It’s common

Recommendation

  • Seasonality => Wait / Improve model on that
  • Holiday => Same. Opportunity sizing and new strategy.
  • Internal => Further data analysis, survey, AB testing new features (painkiller), Debug outage.
  • External => Improve algorithm for new users.

People you may know on news feed.
What features to use to find people you may know?
Clarify: Increase NSM by increase the network quality & quantity. For new friends only.
Brainstorming:

  • Network overlap. Co-worker overlap. Close friend overlap. Follow similar public account.
  • Bio: Same city, school (close year), company, hobby
  • Together proxy: Tagged in same post; Location close in same day (overlap in year).
    Analysis
  • We can check correlation by these metrics to Y (already friends)
    Recommendation:
  • Y can be already friend.
  • Test acceptance rate to know if recommender is good proxy.
  • Often need ML model like NN two tower matching to optimize similarity score.
  • Feature can be compressed into embedding

What metrics to monitor for AB testing?
Brainstorming

  • Request # by new feature; Request # / Viewed #
  • Acceptance rate; Accepted #
  • SPAM rate
  • For MLE: Average rank of request. Distribution on rank

Grouping Metrics & Evaluate

  • Drive metrics: Request # / Viewed # for the new feature
  • Supporting metrics: Acceptance rate from new feature (within 1 week).
  • Guardrail: Spam reporting #
  • For MLE: Average rank of request. Distribution on rank