I think you'd just be better served with just a little different primary key.
If your primary key was (user_id, created_at) or (user_id, created_at, question_id), then you'd be able to run the above query without a problem.
This will mean that the entire pantheon of a specific user_id will be stored as a 'row' (in the old style C* vernacular), and then the information would be ordered by the 2nd piece of the primary key (or 2nd, then 3rd if you included question_id).
You would certainly want to include any field that makes a record unique in the primary key. Another thing to note is that if a field is part of the primary key you can not create a secondary index on that field. You can work around that by storing the field twice, but you might want to rethink your structure if you find yourself doing that often.