9 answers
Asked
1805 views
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
Login to comment
9 answers
Jill Eckhart
Program Manager, Former Videogame Producer, currently working on Videogame development tools and services
13
Answers
Updated
Jill’s Answer
Hi Stephanie! There are a number of things companies look for depending on the type of development you want to do. Web development is different than cloud service work, which is different than 3D game development to name a few.
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.
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.
Updated
Aaron’s Answer
Im glad that you asked about soft skills in addition to hard skills. Soft skills are just as important to what you can do, and it has been growing in importance in the software engineering field as well. When hiring and interviewing candidates, I do evaluate their soft skills as well as their tech knowledge because the ability to work with a team is just as important to getting things done. If no one on the team wants to work with you, then you wont get much done.
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.
Simon Sinek (https://simonsinek.com/) has good advice on soft skills to develop
Joana Carneiro (https://joanalcarneiro.medium.com) has a good article on both hard & soft skills, as well as a roadmap that will help
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:
Updated
Joseph’s Answer
The ability to demonstrate you've written software that can scale. This can be shown in a tech interview or articulated in a general interview - maybe both!
Updated
Greg’s Answer
That's a "It depends" kind of question. Generally speaking they are looking for experience in the tech stacks the company uses, years of experience and maybe experience in the industry. I personally look for smart, passionate people who know how to get work done.
Updated
Maciej’s Answer
I'd say typically you can expect an interview during which you'll be asked technical questions, maybe also something to code as well, where you'll be the one to explain to the interviewer how you ended up with your solution, what kind of trade-offs you had to make, etc . Sometimes the question or problem itself is given only vaguely on purpose, so it's up to you to ask the interviewer questions that would clarify what is actually expected of you. In other words - the soft skills you should focus on here are the ability to explain your reasoning, by showing not only the pros but also the cons, to identify what you don't understand at first glance to be able to discuss it (that's a tricky one, since we normally have a tendency to not admit that we don't get something), to be prepared to accept the other point of views or maybe even disagree with them, but in a constructive way.
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.
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.
Updated
Murdo’s Answer
There are 3 key behaviors we look for in an engineer. Are they Smart? Are they Humble? Are they Coachable?
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.
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.
Updated
Mark’s Answer
In today's world a hiring manager is just as likely to be looking for team work and general problem solving skills as they are hard technical skills. Software developers today need to understand the domain of the problem they are solving just as much as coding. This means you'll be talking to business users or external customers to understand their business requirements or to troubleshoot problems.
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.
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.
Updated
Zahid’s Answer
Lot of good answers here. Some companies out there want you to have hard skills down, like know your programming inside and out (like amaazon) while other companies will focus more on soft skills so long as you have the basic programming concepts and skills down (like progressive). In general, soft skill wise be communicative, approachable, friendly and someone who listens and gets well with others. Hard skills you can start learning now, it'll help when you do get to your CS classes. If you have time you can take free virtual coding class online. I recommend this one from harvard:
CS50's Introduction to Computer Science
https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
CS50's Introduction to Computer Science
https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
Updated
Samar’s Answer
Since you are in college, most companies look for basic knowledge in computer science. What is most important is the ability for problem solving skills. Most companies these days have several aspects including coding exercise and behavorial questions. I would practice on websites like LeetCode, Hacker Rank etc. and also do some online search on the types of questions that specific companies ask on glassdoor.