A reasonable period is: You tell them up front your ideal timeline, that you have a couple of other irons in the fire (if you do), and you keep them informed of the progress of those other fires. And they do the same for you. Maybe you can't get a timing that works for both sides together, but that is OK. The pressuring is what isn't.
Right. What I found works well is "We'd like to extend an offer, but we'd appreciate a 48 hour turn around, so let us know when you'll be in a place to make that decision"
Assuming the time period is reasonable (a week or two), this works well. What I, as a hiring manager, want to avoid is you shopping my offer against 5 others for the next month. This gives people some safety net where they can get through their current interviews with other companies and then compare them at the same time and give me an answer with a known timeline.
I've been the recruiter in this position. I think it is unethical to string your runners-up along in this situation. You're essentially taking up their (and your) valuable time with little chance at success.
Exploding offers are the least bad solution. Give them 48-72 hours, with a small extension if they are currently talking to someone else.
It's extremely hard for smaller companies to compete with the likes of Google and Facebook, who (I've heard) offer 25% more than everyone else. Which is why they end up with all the talent. Lather, rinse, repeat.
If this is a company's reason for not finding talent then the hiring team is simply not competent at hiring.
You can do any number of things to differentiate yourself from a FAANG to make your company more appealing. However, each candidate will have different values, so in order to gain an edge you first have to engage each candidate with the goal of discovering these values.
For example, this morning I was reading a recruiting email while considering a Sr SDE role on the AWS S3 team. They list 4 basic requirements for candidates, one of which reads:
· Able to debug, troubleshoot and resolve complex technical issues reported by customers
This screams of being responsible for legacy code and spending time on-call resolving other people's bugs. Can your company offer green-field development? Then congratulations, you've just gained an edge over a FAANG!
Other ways to differentiate are to consider the candidate's career trajectory. Maybe they want to become a manager, a technical lead, or pick up new technical skills. Can you place them on a team that will facilitate their professional development? If so then holy cow, this small company is looking better and better!
The point is that you can't go to war with a Goliath and expect to win using brute force. So if your opponent has 10 ships while you only have 1 then do yourself a favor and fight on land.
For context, I've had to lead and grow technical teams in the Seattle market, which means competing with Amazon, Facebook, Microsoft, and to a lesser degree Apple and Google. Having filled ~50 technical roles, I can say that succeeding in a competitive market requires you to be hands-on and highly engaged. And if your recruiting pipeline begins and ends with a submit form then you're going to make life really hard on yourself.
I assumed that jnwatson was talking about runner-up job candidates, who are in a holding pattern until the first-choice candidate accepts or declines the offer.