Original TC: 220K New TC: 450K Role: Data Engineering YOE: 6 Applications: 35 Recruiter Calls: 27 (77%) Tech Screens: 18 (67%) On Sites: 7 (39%) Offer: 1 (14%) Hi Blind, I've learned a lot from all of you. I want to give back by sharing my experience working with a negotiation coach and a few things that might help you in your search. - https://start.interviewing.io/salary-negotiation - Live Salary Negotiation with an Expert (https://youtu.be/U1dvBjw2bA8) - Costs $3K if he can increase your offer by at least $15K. Win-win I attended one of Kevin's webinars, and after chatting directly with him I could tell he had the skills and experience with negotiation that I did not have. I had only negotiated once before and was pretty abysmal at it. After working directly with him I was able to increase my initial offer from 325K to 450K. He blew my expectations out of the water. It was a team effort, but from answering calls and messages at strange hours to providing key insights on how to navigate tricky negotiation situations, he was always there, a trusted advisor with an uncanny ability of knowing exactly what to say and when to say it. We all need a Kevin on speed dial. I only wish I had worked with him sooner. A few key techniques we used: - Have pre-canned message ready for initial offer. Give them nothing, but make them feel like you gave them something, and disengage - Leverage unvested equity after the initial offer for push #1 - Leverage cancellation of on-site at brand name company for push #2 (aka add some additional motivation to "give me X and i will sign") Some questions that came up: - https://leetcode.com/problems/median-employee-salary/ - https://leetcode.com/problems/find-median-from-data-stream/ - https://leetcode.com/problems/longest-palindromic-substring/ - https://leetcode.com/problems/longest-substring-without-repeating-characters/ - https://leetcode.com/problems/valid-palindrome/ Other Stuff: - (ALL) Read Fundamentals of Data Engineering (https://www.oreilly.com/library/view/fundamentals-of-data/9781098108298/) - (ALL) Make sure you're not a SQL monkey. Show that you can do more than build dashboards and write SQL queries. Some great posts on SDE as a starter, like this streaming one https://www.startdataengineering.com/post/data-engineering-project-for-beginners-stream-edition/ - (ALL) https://www.stratascratch.com/ was the closest to actual DE SQL interview questions - (ALL) Know Window Functions cold (RANK, DENSE_RANK, ROW_NUM, LAG, LEAD, etc.) - (ALL) Some interviewers impressed by knowledge of HyperLogLog (https://engineering.fb.com/2018/12/13/data-infrastructure/hyperloglog/) - (ALL) Know SQL cold, string manipulation (SUBSTR(str, -4)), RANK()), some pandas knowledge useful, e.g. explode() to expand a multiple author column - (DBX) Write query that returns number of classes by class size. Order the result by decreasing class size - (DBX) We have query that returns budget per hour for each class. Unfortunately, we missed the fact that a student could be assigned to multiple classes. If a student is assigned to multiple classes, budget of this student should be equally split among those classes. Change the query to fix this oversight. - (DBX) We have a query that returns students assigned to classes in the "Second districtā district. Unfortunately, the tableĀ `student_class`Ā was accidentally updated without possibility for recovery and is no longer usable. We found an alternative tableĀ `student_class_log`Ā that contains a log of changes in this table. Fix the query so it uses this new table. PS. It doesnāt make sense to fixĀ `student_class`Ā because the process that corrupts data is still not well understood. - (DBX) We have a query that returns students with in-person or virtual visits on a specific day. In-person and virtual visits are treated separately (we could have the same student in the result set twice). The result should be sorted by visit quantity. Unfortunately, with significant growth in both event tables (billion rows), the query became slower and slower, even with the index on theĀ `timestamp`Ā column. Can we improve query performance here? - (NFLX) Don't forget you can combine Python and SQL to solve a problem. You can for example filter to a specific set, then pass that set to a UDF to handle the more complex functions of data manipulation. You can process a set vs. declaring / describing a specific set. Context: calculating total watch time using a stream of events (asset_id, account_id, user_id, timestamps, event_name) - (NOTION) Design a data ingestion system - (RBLX) Target Comp Range 430K - 560K - (TEAM) Target Comp Range 350K - (AAPL) Target Comp Range 450K We're all gonna make it. Godspeed. You only need one.
I increased my offer by 17k
Appreciate it OP. What state are you in? Wondering because TX does not have this and I want to be somewhere with this TC. Current TC 150k
California
Kevin doing some advertising in Blind š
SQL monkey
Wtf is data engineering? I know all those things but am getting paid as a lowly SWE. Seems easier since you donāt need to know K8s or best practices of backend product development
Is Kevin in meta now?
Thanks, I just did my first switch after 8 yrs(data eng) and hate myself for not negotiating well with Bloomberg. I just accepted what they gave as recruiter told its upper limit š. I wish I couldāve seen it earlier
Why are DE been asked leetcode?
Thatās a lot of text to say to practice interviewing and get competing offers