A software development career poses challenges that we don't often discuss: How do you keep up with rapidly changing technology? When, and how often should you change jobs? How do you evaluate a job offer? How and when should you move from programming into management, or into some other related career? How do you leverage those relatively high salaries into real financial security? Should you work for a large company? A startup? Or found your own company? This course will help you answer those questions and more, whether you are just learning programming or have been developing software for decades.