I agree with #1 100%. I actually took a year off and found a startup in a field where I had an idea for a startup but decided not to do; statistically, it would've been a challenge.
In any case, while my friends were doing co-op (which is like an internship but you get paid and companies get tax benefits), I found and worked at a full-time job. They were busy commenting legacy code while I got to learn so much about everything. This company I worked at even trusted me to fly out and meet directly with clients who would show up with a team of 30 or so Engineers. I truly love this company and I am going back to them.
Regarding #2, I guess I must have struck a universal magic cord and lucked out! But my worry is that, 5-6 years down the line, if I won't be able to goto a company like Tesla/SpaceX for a) having shit grades, b) not getting experience in their field (my startup is more CS/CE) but my degree is in Systems Engineering.
Regards,
B