Okay so I just finished the UPS online assessment last week and couldn't find much recent info before I took it, so posting this while it's fresh.
Applied for a software engineer new grad role (they have a Tech Rotation Program for new grads, if you didn't know that's a thing). Got the OA link about 5 days after applying.
The platform. HackerRank. Not their own custom tool.
Format. 90 minutes. Three coding problems. Problem 1: Easy. String manipulation. Think reversing a string with some constraints around special characters. Warm-up. Problem 2: Medium. Involved a graph or tree structure. I got a problem about finding the shortest delivery route between warehouses given a list of connections and costs. Textbook Dijkstra setup if you recognize it. Not tricky, just make sure you know your graph basics. Problem 3: Medium-Hard for me. Array-based with some DP flavor. I got it working but not optimally within the time limit. Submitted anyway.
Time felt tight but not impossible. I'd say 90 minutes is enough for someone who's actually practiced.
One thing to know. There's also a short written section at the end. Two questions, short-answer. Something like: 'Describe a time you had to solve a problem with incomplete information' and 'What does working in a team mean to you.' These are behavioral and they're not optional. Don't blow through them in 2 minutes because you're relieved you finished coding.
Did I pass? Yes, heard back in 4 business days for a phone screen invite. So the bar isn't insane but you have to actually code.
Prep advice. Focus on graphs, trees, and basic dynamic programming. At least 2-3 weeks of consistent LeetCode at medium difficulty. The Dijkstra problem would have wrecked me 3 months ago. Know your graph traversal cold.