I've started programming when I was about 10 years old and truly loved it ever since.
This year I've graduated from a mediocre university with a CS degree in Eastern Europe and two months later got a job offer at Google in Mountain View as a software engineer.
The problem is with my education - when I went through any curriculum from the top 10 US universities (an a lot of my co-workers are from such universities), and watched some of the online-available video lectures from these universities and the assignments that their students had during their studies, I've noticed that my university does not even come close to their level. I just feel that I was wasting time at my university, when I see that others got incomparably better training in CS.
I would say that the courses at my university covered at most 30% of what the top-10 universities did - despite having identical classes. They just have better teachers, better curriculum, harder projects, better resources and they go more in-depth.
Now, I feel quite comfortable with solving algorithmic problems, with programming in general, but still - each time I look at any of the undergraduate courses in these universities I find a lot of nuances that weren't covered in my classes. Some of them are significant, other less.
Now being in the US, being financially and legally able to afford paying for an undergraduate CS course - is it worth going to one of the top 10 US universities and complete a second CS bachelor degree to fill in the gaps left over my first degree?