Software engineers are required to work long hours, often 8-12 hours per day and on weekends, to meet deadlines. Their salary depends on education and experience, ranging from $40,000-$60,000 for recent graduates to $90,000-$150,000 for senior engineers and executives. A software engineering degree is required, which generally takes 4 years, and engineers may need to register as a Professional Engineer through further education and experience.