This was the tile of an article published in Dr Dobbs. It started to make me think. When i remember computer science, I remember data structure, algorithms and complexity and the interest created in them made me look for a job in software industry. I has assumed that software job was a job that utilized computer science in total and joined with the lure of high start salary 11 years back. Looking 11 years later, I see that the strengths of computer science used at my work is close to 10 percent or less than that. Software engineering involves little or no role for algorithms, data structure and complexity.
Software engineering involves humans as central to the process. I am copying this picture from Dobbs article for reference. The red line is the property "directly involves human activity" and items above the line is software engineering and the items below is computer science.
Hence if we are building a software development team, what should the manager look for team members? computer science skills or people skills(attitude, team work, ownership, responsibility). It might be good to have one team member with computer science background, but most of the team members including me need the other skills. I would like fresher’s who are students of computer science to be aware of the differences between software engineering and computer science, prior to joining software development.