9 answers
Asked
1367 views
What is a strength/Core to have in Computer Science?
I am Michael Rodriguez who is a Junior at the school Phillip and Sala Burton High School. I was pondering what is a core value to have before starting a career in computer science, Should I improve on something like coding or communication before fully committing? #computer-science
Login to comment
9 answers
Updated
Angelo’s Answer
Hi Michael!
Lots of good answers here, but I found it interesting you mentioned communication, because that's super important in Computer Science. In fact, other than being a set of instructions, code is authored for people to read! People should be able to understand your code so they can use it or make changes, and this doesn't just include your co-workers, but also you! In the few years I've been working I've already experienced some moments where I was like: "What?? This code is weird. Who wrote this? ...Oh, it says here I did"
Not only that, but collaborating with business people or other engineers requires good communication skills. Very soon you'll need someone's help to do something - and when you do, you need to be able to communicate problems clearly, and be efficient with other peoples' time (they have things they need to do too!).
Communication skills are also quite attractive in an interview setting - a person with better communication skills will look better, compared to someone with the same qualifications. Specifically, someone with good communication skills can show they understand the company's problem (they want someone for a job), and effectively discuss how to can solve it (with their skillset). Much like the day-to-day collaboration when you start working!
Lots of good answers here, but I found it interesting you mentioned communication, because that's super important in Computer Science. In fact, other than being a set of instructions, code is authored for people to read! People should be able to understand your code so they can use it or make changes, and this doesn't just include your co-workers, but also you! In the few years I've been working I've already experienced some moments where I was like: "What?? This code is weird. Who wrote this? ...Oh, it says here I did"
Not only that, but collaborating with business people or other engineers requires good communication skills. Very soon you'll need someone's help to do something - and when you do, you need to be able to communicate problems clearly, and be efficient with other peoples' time (they have things they need to do too!).
Communication skills are also quite attractive in an interview setting - a person with better communication skills will look better, compared to someone with the same qualifications. Specifically, someone with good communication skills can show they understand the company's problem (they want someone for a job), and effectively discuss how to can solve it (with their skillset). Much like the day-to-day collaboration when you start working!
Updated
Rebecca’s Answer
Hi Michael, I am glad to hear that you are interested in Computer Science. The most important that you have the interest and passion on it. Without the passion & interest, you cannot enjoy and do a good job.
There are plenty of job categories in Computer Science like Developer, Computer Engineer, System Administrator, Database Administrator, Application Support, System Support, etc. Each of these require different knowledge and skill. However, you can learn the computer theory and basics in the college. So, don't worry about it.
On the other hand, if you would like to have the level comfort, you can discuss with someone who are working in the industry if you know someone. Or, you can seek advice from your school career counselor.
For the time being, you can also start doing some simply programming like control robotics cars, simple games, etc. using scratch, Pathyon, etc. This can you a better sense on Computer Science.
Hope this helps! Good Luck!
There are plenty of job categories in Computer Science like Developer, Computer Engineer, System Administrator, Database Administrator, Application Support, System Support, etc. Each of these require different knowledge and skill. However, you can learn the computer theory and basics in the college. So, don't worry about it.
On the other hand, if you would like to have the level comfort, you can discuss with someone who are working in the industry if you know someone. Or, you can seek advice from your school career counselor.
For the time being, you can also start doing some simply programming like control robotics cars, simple games, etc. using scratch, Pathyon, etc. This can you a better sense on Computer Science.
Hope this helps! Good Luck!
Updated
Vinod’s Answer
First and foremost, you should have passion. Secondly, you should be able to breakdown any complex problem into simple steps and find solution to each steps, later order those steps so you get complete solution to that complex problem.
There are wide array of jobs categories, for instance you like to be a programmer. My recommendation is to understand foundation of programing and understanding widely used programming principles. I know programming language varies one to another but the foundation and principles are constant. So to build strong core of anything you like to pursue have those foundation and principles strong.
There are wide array of jobs categories, for instance you like to be a programmer. My recommendation is to understand foundation of programing and understanding widely used programming principles. I know programming language varies one to another but the foundation and principles are constant. So to build strong core of anything you like to pursue have those foundation and principles strong.
Updated
Gerald’s Answer
What is the core to have in Computer Science?
Hi!
First you must be comfortable using a computer whether it's MAC or WINDOW operating system....guessing most people are now comfortable with that.
An understanding of basic and advanced math.
Knowledge of a several open source computer programming language as well as object oriented language.
The ability to use certain applications and Business intelligence tools....If you can learn those you will put yourself on the right track. I hope that helps....go for it!
Hi!
First you must be comfortable using a computer whether it's MAC or WINDOW operating system....guessing most people are now comfortable with that.
An understanding of basic and advanced math.
Knowledge of a several open source computer programming language as well as object oriented language.
The ability to use certain applications and Business intelligence tools....If you can learn those you will put yourself on the right track. I hope that helps....go for it!
Updated
Brendan’s Answer
I have found throughout my career that there are around three large skills that really set some engineers apart from others. The first one is an "Analytical Mind". Having an analytical mind allows you to break down problems in smaller chunks and helps you to solve problems faster as you are able to strip away all of the excess and find the needle in the haystack. The second one is "Communication". This is by far the most sought after skill as it allows you to better translate ideas from customer to engineer and back again. Communication has helped me immensely inside and outside the workplace build relationships and network with others who are in my same space. It has also been I believe one of my biggest assets in an interview. The third is "Passion". Passion is one of those skills that is not taught but is super useful when getting into a career in computer science as this is what will drive through the hard times when you don't fully understand things but want to.
Updated
Alex’s Answer
Excellent question!
When figuring out if you have an aptitude for computer science, you should ask if you are curious enough to chase things 'down to the metal'. Computer science is built on layers- from the raw logic of the CPU and memory, to assembler languages, and on to higher level languages, protocols, frameworks and systems. Understanding the lowest of the stack helps to ensure deep understanding of the top.
When figuring out if you have an aptitude for computer science, you should ask if you are curious enough to chase things 'down to the metal'. Computer science is built on layers- from the raw logic of the CPU and memory, to assembler languages, and on to higher level languages, protocols, frameworks and systems. Understanding the lowest of the stack helps to ensure deep understanding of the top.
Updated
I’s Answer
Hi - I think that the most important is to identify the areas which you find most interesting and enjoyable, and often there's no better way than sampling. It is possible there is a "Coder Dojo" nearby which may be of interest if development and problem solving are something you enjoy, and keep in mind that computer science is a very broad career area. General coding and problem solving skills will apply to many career paths in this area, including DevOps. Enjoy your discovery and learning!
Updated
Zahid’s Answer
I agree with Angelo on this. Coding is importing but communicating is just as important if not more. Coding you can learn, many can learn that but if you are not good at coding then that will hamper your success on the job and the career as well. Programmers do need to communicate with business analysts (the middle man) or the clients directly about what they want, what you can give, where compromises can be made, what is done what is left and so forth.
If you go to an interview with companies like Progressive, they'll tell straight out that coding they can teach themselves (they have a good mentoring program), and they are looking people who can communicate and is a good culture fit for their company.
It's important to learn coding too as no one will hold your hand on this job, they will help you and guide you but you will need to learn to hold your own and be ready to work independently. A good example is a friend of mine who wasn't good at communicating but was good at coding so what he did was take his laptop with him to the interview and instead of communicating about what he can and could, he showed them what he had done and answer their questions about what how he approached the problem, what he was thinking and why he used this method vs that method in coding. He got the job of course but that's just extra work he had to do due to limited communication skills. So having both is important.
If you go to an interview with companies like Progressive, they'll tell straight out that coding they can teach themselves (they have a good mentoring program), and they are looking people who can communicate and is a good culture fit for their company.
It's important to learn coding too as no one will hold your hand on this job, they will help you and guide you but you will need to learn to hold your own and be ready to work independently. A good example is a friend of mine who wasn't good at communicating but was good at coding so what he did was take his laptop with him to the interview and instead of communicating about what he can and could, he showed them what he had done and answer their questions about what how he approached the problem, what he was thinking and why he used this method vs that method in coding. He got the job of course but that's just extra work he had to do due to limited communication skills. So having both is important.
Updated
Chris’s Answer
You need to be able to analyze a problem and come up with a logical process (e.g., a flow chart) for solving that problem. You then come up with a coding solution to implement that process. It's quite a lot like solving "word problems" in math. Courses in logic, applied mathematics and some rudimentary coding skills will give you the basic tools to begin the study CS and get a feel for how good a fit it is.