What do employers look for when recruiting for a software engineer, or any other computer science job?
I'm interested in pursuing computer science as a degree in college but I was wondering what tech companies look in terms of soft skill, and maybe a bit of hard skills as well.
What are some classes I should take in college? What skills should I work on or need?
#computer-science #computer #technology #computer-software #software
Regarding soft skills, many companies will expect you to be able to work well with others, with some experience on group projects, whether at school, as a hobby, at a hackathon, etc. You will also be expected to be a good problem solver, have strong attention to detail, and have good communication skills.
It might be helpful to scroll through the careers section of the website for companies that interest you and search for jobs that sound interesting. The specific job descriptions will explain what languages they are looking for, along with other skills. More specialized roles may have more specific requirements, such as experience with networking, graphics, AI, etc.
For soft skills, the ability to listen to other points of view, discuss differences cordially, approach others with an open mind, a learning attitude, effective verbal and written communication, and give/take constructive criticism are skills that I personally look for. You will always come across tense and difficult situations when working with a team. How you handle yourself and those situations will carry you further in your career than always being right, or getting things done in my opinion.
Aaron recommends the following next steps:
CS50's Introduction to Computer Science
Our interview process is designed to identify for "smartness" by discovering if the engineer has the capacity for abstraction, logic, understanding, self-awareness, learning, emotional knowledge, reasoning, planning, creativity, critical thinking, and problem-solving.
A humble engineer is one who is is not too proud and does not believe that they are better than other people. We like to avoid having "rockstar" engineers with a big ego, who other engineers do not enjoy working with.
A coachable engineer is one who is open to asking for and receiving feedback. They view the input from others as a valuable tool in their development. They also are willing to take actions and make personal changes based on the feedback.
Every manager wants people that are passionate about their work, dedicated to getting the job done and someone that is easily to get along with on a team.
During a day to day work there'll be a lot of discussions where the goal is not to "win" but to reach the best possible solution, and a good interviewer would like to see that they can count on you with that.