As much as I loved my Computer Science curriculum at Ole Miss, it taught me nothing about being an effective software engineer. When I was in school, Computer Science programs were optimized for producing grad students. Grad students need to excel at research and publishing. Not shipping software. My career experience has provided no evidence anything has changed. To be an effective software engineer, you must learn on the job.