I'm a sophomore CS student, and would like to start deepening my knowledge much more. What are some good papers to start reading (as in, not so complicated that the content will go over my head).
"Raft: A distributed Consensus Protocol" (<a href="https://ramcloud.stanford.edu/wiki/download/attachments/11370504/raft.pdf" rel="nofollow">https://ramcloud.stanford.edu/wiki/download/attachments/1137...</a>) would be a very valuable thing to look at for a sophomore CS student. I imagine it's a bit different than what you've studied so far, but the protocol was designed for understandability and ease of implementation above all else. As a result, it's gained quite a bit of interest from the industry, and you'll find implementations in Go, Erlang, Java, etc. to pick apart.
Here is a collection of great computer science papers to get you started: <a href="http://jeffhuang.com/best_paper_awards.html" rel="nofollow">http://jeffhuang.com/best_paper_awards.html</a><p>It includes some intermediate and pretty advanced topics.
One favorite of mine is Danny Hillis' dissertation on the connection machine:<p><a href="http://dspace.mit.edu/bitstream/handle/1721.1/14719/18524280.pdf" rel="nofollow">http://dspace.mit.edu/bitstream/handle/1721.1/14719/18524280...</a><p>And not really a research paper, but if you haven't read it, you'd might enjoy Guy Steele's <i>Growing a Language</i>:<p><a href="http://www.cs.virginia.edu/~evans/cs655/readings/steele.pdf" rel="nofollow">http://www.cs.virginia.edu/~evans/cs655/readings/steele.pdf</a>
Nothing changed my worldview as much as this paper did, which I only saw a couple years ago. Less you think I'm some easily impressed fad chasing newb, I've been programming professionally for 13+ years<p><a href="http://ttic.uchicago.edu/~dreyer/course/papers/wadler.pdf" rel="nofollow">http://ttic.uchicago.edu/~dreyer/course/papers/wadler.pdf</a>