On User-Level Private Convex Optimization