Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
qirex
Feb 15, 2001

Notorious b.s.d. posted:

if they offer was 90, their bill rate was probably 180-200

nah the long term markup is usually 30-40%, nobody would pay 180 an hour for a long term contract designer. that’s honestly 1099 rate for what I do

at my last job the recruiter accidentally copied me on the final contract and they were making 30%

Adbot
ADBOT LOVES YOU

Notorious b.s.d.
Jan 25, 2003

by Reene

qirex posted:

nah the long term markup is usually 30-40%, nobody would pay 180 an hour for a long term contract designer. that’s honestly 1099 rate for what I do

at my last job the recruiter accidentally copied me on the final contract and they were making 30%

lol worst contractor ever

i spent several years working at a body shop and anything less than 100% markup on my wage (as a w2 worker) was a horrendous money loser

this was, nevertheless, the norm, on large corporate contracts because they would bill like eight seat warmers at $NN rate and it would some how average out to pay for two people to actually do the job

edit: they basically had a two-tier price scale:
  • can you pay for our actual billing scale, per resource?

  • or are you willing to pay for sixteen mystery "resources" with a nice cheap overall price and poorly defined deliverables?

ADINSX
Sep 9, 2003

Wanna run with my crew huh? Rule cyberspace and crunch numbers like I do?

Notorious b.s.d. posted:

[*]or are you willing to pay for sixteen mystery "resources" with a nice cheap overall price and poorly defined deliverables?
[/list]

Oh so that's how my contractor job worked.

Captain Foo
May 11, 2004

we vibin'
we slidin'
we breathin'
we dyin'

Notorious b.s.d. posted:

lol worst contractor ever

i spent several years working at a body shop and anything less than 100% markup on my wage (as a w2 worker) was a horrendous money loser

this was, nevertheless, the norm, on large corporate contracts because they would bill like eight seat warmers at $NN rate and it would some how average out to pay for two people to actually do the job

edit: they basically had a two-tier price scale:
  • can you pay for our actual billing scale, per resource?

  • or are you willing to pay for sixteen mystery "resources" with a nice cheap overall price and poorly defined deliverables?

don't put your signature at the top of posts

Bloody
Mar 3, 2013

Symbolic Butt posted:

Did a screening coding test for one of the big companies. 2 questions, the first question was fairly easy to solve. The second one caught me by complete surprise, it was a Minimum Spanning Tree problem and I was just not expecting something on this level for the screening phase. I mean, the recruiter sent me a couple sample hackerrank problems, I did them all but none of them were close to this level. Anyway, it was a complete disaster and I couldn't submit anything close to functional.

I still passed the test anyway. :shrug:

Not sure what the takeaway here is, I guess it's like when you get caught with something unexpectedly hard... Don't feel too upset? Maybe getting me to panic was by design.

yeah that code screen is... interesting. and their web ide blows rear end lol

Bloody fucked around with this message at 17:41 on Apr 7, 2019

Jort Fortress
Mar 3, 2005

Symbolic Butt posted:

Did a screening coding test for one of the big companies. 2 questions, the first question was fairly easy to solve. The second one caught me by complete surprise, it was a Minimum Spanning Tree problem and I was just not expecting something on this level for the screening phase. I mean, the recruiter sent me a couple sample hackerrank problems, I did them all but none of them were close to this level. Anyway, it was a complete disaster and I couldn't submit anything close to functional.

Was this Amazon? A recruiter from the Devices org asked if I wanted to interview a couple of months ago, then sent a HackerRank. 1st problem was some variation of "2Sum" and the 2nd was as you described. I could barely understand what they were asking, wrote down some non-functional code and said "this is a ridiculous question to ask. It involves a MST but I have no idea." Then they invited me for an onsite, lol.

Who knows how to solve that crap off the top of their head? (rhetorical question, don't algo-shame me)

Bloody
Mar 3, 2013

I threw together a solution that passed half of the tests and left a lengthy comment about the situations it didn't work for

I did not come up with calling an mst though I was just like uhhhh graphs?? OK I'm gonna do some poo poo with graphs I guess???

champagne posting
Apr 5, 2006

YOU ARE A BRAIN
IN A BUNKER

Fart Johnson posted:

Was this Amazon? A recruiter from the Devices org asked if I wanted to interview a couple of months ago, then sent a HackerRank. 1st problem was some variation of "2Sum" and the 2nd was as you described. I could barely understand what they were asking, wrote down some non-functional code and said "this is a ridiculous question to ask. It involves a MST but I have no idea." Then they invited me for an onsite, lol.

Who knows how to solve that crap off the top of their head? (rhetorical question, don't algo-shame me)

I tried this with Palantir and they ghosted me.

carry on then
Jul 10, 2010

by VideoGames

(and can't post for 10 years!)

i've been helping out interview interns for this summer and we have a coding test that does the same drat thing

question one is consume a simple api

question two is (identical to) unbounded knapsack

ADINSX
Sep 9, 2003

Wanna run with my crew huh? Rule cyberspace and crunch numbers like I do?

Bloody posted:

OK I'm gonna do some poo poo with graphs I guess???

Me during every interview question

Symbolic Butt
Mar 22, 2009

(_!_)
Buglord

Fart Johnson posted:

Who knows how to solve that crap off the top of their head? (rhetorical question, don't algo-shame me)

it's a topic beyond the "cracking the code interview" book, it's just too much for me... :smith:


now, after thinking A LOT about this problem, I feel like it's easy* to solve if you remember that MST is a rare kind of problem where you can use a greedy algorithm to directly find an optimal solution (instead of a "somewhat good solution" which is the usual case for gredy). It's not an immediately obvious fact, you can't just look at MST for the first time in your life and quickly conclude "oh yeah, a greedy algo will completely solve this", the mathematics for proving this property is not all that intuitive.

[*] actually not really because there are a couple of tricky parts, I'm not sure a person under pressure could figure out using a priority queue or remember the details of those kinda specific graph connectivity data structures.


in the end it's just about testing your BS CS (top 50)

Xarn
Jun 26, 2015
If you somehow rederived Borůvka's algorithm I agree, but Jarník's invariants and variants are dead simple. :shrug:

Private Speech
Mar 30, 2011

I HAVE EVEN MORE WORTHLESS BEANIE BABIES IN MY COLLECTION THAN I HAVE WORTHLESS POSTS IN THE BEANIE BABY THREAD YET I STILL HAVE THE TEMERITY TO CRITICIZE OTHERS' COLLECTIONS

IF YOU SEE ME TALKING ABOUT BEANIE BABIES, PLEASE TELL ME TO

EAT. SHIT.


we did Kruskal at uni, dunno I think it's a fairly easy one

Jort Fortress
Mar 3, 2005

Private Speech posted:

we did Kruskal at uni, dunno I think it's a fairly easy one

I graduated a decade ago. I don't even remember what classes I took in college, lol

This is the question I was asked by Amazon:
https://www.hackerrank.com/challenges/kingdom-connectivity/problem

If that's considered reasonable for an hour-long code screen, I need to move into management real quick. Even non tech companies send you this poo poo now.

CLASS 2 PERVERSION
Jan 19, 2010
well I just handed my notice and the startup i work at today

I also got a rejection from an interview I did last week, them citing not enough experience, which is fair enough. i left anyway though, I just really don't have it in me. no kids / partner / house / anything here and i have at least a year's worth of savings so i'm loving off on holiday for a bit then going to help out my grandad with some work before he sells his house. he lives in the mountains so I was going to get back into cycling as well hopefully. I mostly just want out.

FamDav
Mar 29, 2008

Fart Johnson posted:

I graduated a decade ago. I don't even remember what classes I took in college, lol

This is the question I was asked by Amazon:
https://www.hackerrank.com/challenges/kingdom-connectivity/problem

If that's considered reasonable for an hour-long code screen, I need to move into management real quick. Even non tech companies send you this poo poo now.

if thats also the question others saw, then a MST isn't really the answer here. the problem is p rough though because you have to realize that the "infinite paths" bit means you're solving two problems

1. is there a cycle on a path between A and B? if so, detect cycle and print "infinite paths"
2. if there isn't a cycle, print the right number of paths

we can detect the former with a DFS, because if we ever link back to a node we've already seen when exploring the graph, we've found a cycle. if we can show that any node in that cycle is also on a path to B from A, then we know the answer is "infinite paths"

option 2 can also be solved with a DFS, and since we're assuming the graph is acyclic (at least w.r.t. the part we care about) we can memoize results since we know the graph never backtracks.

qirex
Feb 15, 2001

offer extended for the amount of money I asked for in the first place, I have an interview tomorrow at another place but it’ll have to be pretty magical for me to not take that first one

Jort Fortress
Mar 3, 2005

FamDav posted:

if thats also the question others saw, then a MST isn't really the answer here. the problem is p rough though because you have to realize that the "infinite paths" bit means you're solving two problems

...

Appreciate the explanation! Looking at the problem again, it was actually a slight variation of the one I posted. I found some walkthroughs on solving it and they all mentioned Kruskal's MST algorithm, but I could be wrong. I tried using a DFS and got nowhere, but admittedly couldn't grasp the problem statement...it was several paragraphs long.

Anyway, I have a good job now so no big deal. But it's just been crazy watching interviews evolve over the past 10 years. I've mostly worked in insurance/aerospace/healthcare, but have interviewed with various tech companies and gotten comfortable whiteboarding. Seems like the difficulty has really ramped up in the past few years. When I interviewed with AWS 4 years ago the hardest coding question was solved with a basic BFS.

Xarn
Jun 26, 2015

FamDav posted:

option 2 can also be solved with a DFS, and since we're assuming the graph is acyclic (at least w.r.t. the part we care about) we can memoize results since we know the graph never backtracks.

I am just gonna add that this trick is called dynamic programming and is pretty common in similar questions.

In theory, you should prove that your problem has properties which make it a valid target of DP (informally that you can find optimal solution for n things by using the optimal solution for n-1 things and the nth thing). In practice, you just get a feel for when it applies :v:

qhat
Jul 6, 2015


List of times I've used dynamic programming in my job:

-

Bloody
Mar 3, 2013

comes up in p much every interview tho lmao

feedmegin
Jul 30, 2008

Fart Johnson posted:

Seems like the difficulty has really ramped up in the past few years. When I interviewed with AWS 4 years ago the hardest coding question was solved with a basic BFS.

The older you get, the more senior you are and the more difficult the questions you personally will be asked.

HoboMan
Nov 4, 2010

Fart Johnson posted:

Was this Amazon? A recruiter from the Devices org asked if I wanted to interview a couple of months ago, then sent a HackerRank. 1st problem was some variation of "2Sum" and the 2nd was as you described. I could barely understand what they were asking, wrote down some non-functional code and said "this is a ridiculous question to ask. It involves a MST but I have no idea." Then they invited me for an onsite, lol.

Who knows how to solve that crap off the top of their head? (rhetorical question, don't algo-shame me)

interesting
i took the Amazon tests and got both questions (including the mst question: im a algo nerd) passing the tests but got ghosted by the recruiter afterwards

Jort Fortress
Mar 3, 2005

HoboMan posted:

interesting
i took the Amazon tests and got both questions (including the mst question: im a algo nerd) passing the tests but got ghosted by the recruiter afterwards

It's really a crapshoot. I did a code screen for Microsoft once and was ghosted for two months. Then I sent the recruiter an email and got a response asking me to come onsite, which you'd think they'd have done immediately?

With Amazon, this was for a Devices hiring event in Denver. Maybe they're having trouble getting enough qualified candidates here and threw me a bone? Either way, I removed myself from the process because the recruiter made it sound unappealing.

DELETE CASCADE
Oct 25, 2017

i haven't washed my penis since i jerked it to a phtotograph of george w. bush in 2003

qhat posted:

List of times I've used dynamic programming in my job:

-

list of times you've stored previously calculated data in some kind of cache to avoid recalculating it next time you need it: all of the times

qhat
Jul 6, 2015


DELETE CASCADE posted:

list of times you've stored previously calculated data in some kind of cache to avoid recalculating it next time you need it: all of the times

Then just directly ask about caching?

iospace
Jan 19, 2038


Got a Skype interview coming up :toot:/:derp:

Acer Pilot
Feb 17, 2007
put the 'the' in therapist

:dukedog:

anybody happen to know how many phone screens you're supposed to go through at apple?

just did one and i thought on-site was next but i just got an email saying that the next step was... another phone screen.

raminasi
Jan 25, 2005

a last drink with no ice

qhat posted:

Then just directly ask about caching?

yeah i thought that dynamic programming was basically caching combined with decomposition into subproblems

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

qhat posted:

List of times I've used dynamic programming in my job:

-

Caches and dynamic programs are insanely close, as concepts go

But the thing is, directly asking caching stuff is strange because if you want to go any harder than the most trivial of questions you hit a loving wall. Do you want to answer questions about power law distributions and infinite monkey typewriters or the insane reason why lru is the least bad? Do you want to expect actual statistics knowledge out of normal programmers?

The middle class of those problems are like cs algorithms class dynamic programming things

bob dobbs is dead fucked around with this message at 02:40 on Apr 9, 2019

qhat
Jul 6, 2015


Perhaps your whole line of questioning is just wrong from the beginning in that case. If you're not expecting candidates to know the full complexity of the subject matter then you shouldn't be asking it, and if it's too trivial then you also shouldn't be asking it because it's a waste of time. Asking a question that holds even less relevance to the job than either of those situations is almost certainly the worst action of all the above.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

raminasi posted:

yeah i thought that dynamic programming was basically caching combined with decomposition into subproblems

There's nothing that you can cache that can't be decomposed into subproblems

Anything that's a dynamic program can be munged into a caching problem. Vice versa too. Bit of a problem if you want to ask moderately difficult caching problems without asking them dynamic programming problems

Pie Colony
Dec 8, 2006
I AM SUCH A FUCKUP THAT I CAN'T EVEN POST IN AN E/N THREAD I STARTED

bob dobbs is dead posted:

Caches and dynamic programs are insanely close, as concepts go

But the thing is, directly asking caching stuff is strange because if you want to go any harder than the most trivial of questions you hit a loving wall. Do you want to answer questions about power law distributions and infinite monkey typewriters or the insane reason why lru is the least bad? Do you want to expect actual statistics knowledge out of normal programmers?

The middle class of those problems are like cs algorithms class dynamic programming things

you can have a dynamic programming algorithm without caching, dynamic programming is a way of solving certain types of mathematical problems. it doesn't have to include caching at all, but of course it's both practical and theoretically useful to talk about. and also you can go pretty deep with caching problems-- designing caches and eviction policies, implementation details like identity/hash collisions, etc. i interviewed at dropbox once and their whiteboarding exercise was to program a specific type of cache, and that was pretty fun

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

Pie Colony posted:

you can have a dynamic programming algorithm without caching

I'd like an example

qhat
Jul 6, 2015


At the end of the day I believe you should be asking the candidate about things you need them to absolutely know specifically for the job they need to do. Why is knowing the details of caching so important for this job in particular? Are there lots of web services involved that require them to cache responses? How would they do that? Do they know any specific cache technologies? What kind of pitfalls are there and how would they avoid them? How would they invalidate their cached entries? Etc. There's literally an infinite number of ways you can test that the candidate understands the subject matter and more thorough than getting them to recite some silly dynamic programming algorithm they've solved a dozen times in leetcode.com.

Pie Colony
Dec 8, 2006
I AM SUCH A FUCKUP THAT I CAN'T EVEN POST IN AN E/N THREAD I STARTED

bob dobbs is dead posted:

I'd like an example

here are some problems and solutions: https://en.wikipedia.org/wiki/Dynamic_programming#Control_theory

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost
I've interviewed candidates that talked a good game on every single one of those topics and then couldn't actually code, unfortunately. And because of the fact that hiring is a market of lemons, they are more common in the interviewee population than in the general programmer population. You could code a specific cache eviction strategy, sure, but the distinction between the notion of the cache and the notion of the dynamic table is pretty artificial. Stupid problem means a small scoped problem. You do have to reach for obscurity.

bob dobbs is dead
Oct 8, 2017

I love peeps
Nap Ghost

You can cache samples from bellman's. Same deal with backprop and stuff like that. Cache deltas directly as they come up. Good for monte carlo, not that anyone does that

qhat
Jul 6, 2015


I mean, that's kind of anecdotal because I know people who done great on algo in the interview and but yet got fired 6 months later. I just have a serious aversion to asking anything that I could suspect they just got lucky on because they read CTCI. And I'm not saying don't ask them to code in the interview, but I just feel a lot more comfortable also in addition asking a real and complex problem they'll have to solve on a regular basis on the job.

Adbot
ADBOT LOVES YOU

Pie Colony
Dec 8, 2006
I AM SUCH A FUCKUP THAT I CAN'T EVEN POST IN AN E/N THREAD I STARTED

qhat posted:

At the end of the day I believe you should be asking the candidate about things you need them to absolutely know specifically for the job they need to do. Why is knowing the details of caching so important for this job in particular? Are there lots of web services involved that require them to cache responses? How would they do that? Do they know any specific cache technologies? What kind of pitfalls are there and how would they avoid them? How would they invalidate their cached entries? Etc. There's literally an infinite number of ways you can test that the candidate understands the subject matter and more thorough than getting them to recite some silly dynamic programming algorithm they've solved a dozen times in leetcode.com.

it's not really that dynamic programming comes up so often in your day-to-day work, it's more about implementing an algorithm you don't know but have to come up with on the spot. yes, everyone knows 99% of regular dev work isn't coming up with novel algorithms. but it's a proxy for thinking about algorithmic techniques, and employers generally want to hire the people that can do that 1% if the situation arises

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply