10 answers
10 answers
Updated
Andreas’s Answer
I will answer by describing what a typical day looks like for me as a software engineer and maybe that will give some idea what it might be like. Although in practice it may vary widely based on your specific field. I have been working as a software engineer for almost 20 years, mostly working on backend server development primarily in Java. As many modern software companies we take an agile approach which basically means small teams (my team is 4 engineers) that collaborate to incrementally solve a set of customer problems that we own end to end.
I spend 10-30% in a given day doing actual coding . As a junior engineer this will likely be much higher (perhaps 30-50%). Coding for me is very creative and has a lot to do with understanding larger problems and breaking them down into smaller parts that you can solve with software. The more you are able to sit and focus on a specific problem and enjoy doing so I think the more likely you are to enjoy the job.
Then I spend 10-30% operating our services which means deploying our software to production, resolving ongoing service outages or responding to customer escalations or questions. This is not applicable at all jobs but I like this a lot since it gives you a much better insight into how customers are using your products and also provides much more variety to your daily job.
The rest of the time mostly consists of various meetings or writing technical documentation. Meetings will range from 1:1, to team meetings discussing progress and issues or cross team meetings to align overall company goals.
Good luck and if you think software could be for you just start coding
I spend 10-30% in a given day doing actual coding . As a junior engineer this will likely be much higher (perhaps 30-50%). Coding for me is very creative and has a lot to do with understanding larger problems and breaking them down into smaller parts that you can solve with software. The more you are able to sit and focus on a specific problem and enjoy doing so I think the more likely you are to enjoy the job.
Then I spend 10-30% operating our services which means deploying our software to production, resolving ongoing service outages or responding to customer escalations or questions. This is not applicable at all jobs but I like this a lot since it gives you a much better insight into how customers are using your products and also provides much more variety to your daily job.
The rest of the time mostly consists of various meetings or writing technical documentation. Meetings will range from 1:1, to team meetings discussing progress and issues or cross team meetings to align overall company goals.
Good luck and if you think software could be for you just start coding
Updated
Megan’s Answer
One of the beautiful things about computer science is that it is about building! So build! There are plenty plenty plenty of resources for beginners to try out computer programming and learn more about CS and programming. Any good programmer knows to test test test, so start testing your interest in the work. Follow the breadcrumbs of what makes things interesting and if you like what you're doing then you're on the right track!
CS resources online can be varied in skill level, so ensure you're focusing on beginner resources!
I've assembled a few resources below, but try googling 'beginner computer science' and find the resources that work for you.
If you're not ready to code or take a class, you can try different mediums to explore the field, like youtube series or ted talks.
Find the way you learn best and try to expose yourself to more and more of the CS world. If you have
https://www.edx.org/learn/computer-programming
https://medium.com/javarevisited/8-best-computer-science-courses-for-beginners-to-learn-online-696379aa4e96
https://www.onlinecoursereport.com/free/computer-science/
CS resources online can be varied in skill level, so ensure you're focusing on beginner resources!
I've assembled a few resources below, but try googling 'beginner computer science' and find the resources that work for you.
If you're not ready to code or take a class, you can try different mediums to explore the field, like youtube series or ted talks.
Find the way you learn best and try to expose yourself to more and more of the CS world. If you have
https://www.edx.org/learn/computer-programming
https://medium.com/javarevisited/8-best-computer-science-courses-for-beginners-to-learn-online-696379aa4e96
https://www.onlinecoursereport.com/free/computer-science/
Updated
Kevin’s Answer
I am an engineering manager for the apprenticeship program for software engineers, so engineers that switched from other industries after taking a coding training. I first like to say that coding is accessible, but it depends on how you start.
I recognize this is just my own personal opinion - I am someone that learned how to code after college and currently work with early in career software engineers.
Starting out, what language, class and teacher you have will have a great influence on whether or not you like coding/building software. If you start with a more difficult to understand language like C, C++, or Java, you may get discouraged and feel it is not for you. If you have a teacher that is not understanding, who only lectures and does not have interactive learning, you may feel it is not for you.
So find an environment that is supportive. Find a language that is not too intense to learn for new coders (python, ruby). And have an open mind, do not get discouraged if you get stuck. This happens to everyone!
How do you know if it is for you? Try coding fun things on your own and see if you enjoy the problem solving required. See if you get really into the process, that you enjoy the learning experience.
I started out with Python (easier to read for new people from my perspective) and used codecademy.com (which is free to try), which is an interactive learning environment.
Give it a try! And see how you feel.
And remember you can always take a few classes in a subject, to try it out. If you do not like it, you've just learned something about yourself, which is always helpful :)
Sign up for an interactive learning platform such as codecademy.com
Try coding in an easier to understand language like python or ruby
I recognize this is just my own personal opinion - I am someone that learned how to code after college and currently work with early in career software engineers.
Starting out, what language, class and teacher you have will have a great influence on whether or not you like coding/building software. If you start with a more difficult to understand language like C, C++, or Java, you may get discouraged and feel it is not for you. If you have a teacher that is not understanding, who only lectures and does not have interactive learning, you may feel it is not for you.
So find an environment that is supportive. Find a language that is not too intense to learn for new coders (python, ruby). And have an open mind, do not get discouraged if you get stuck. This happens to everyone!
How do you know if it is for you? Try coding fun things on your own and see if you enjoy the problem solving required. See if you get really into the process, that you enjoy the learning experience.
I started out with Python (easier to read for new people from my perspective) and used codecademy.com (which is free to try), which is an interactive learning environment.
Give it a try! And see how you feel.
And remember you can always take a few classes in a subject, to try it out. If you do not like it, you've just learned something about yourself, which is always helpful :)
Kevin recommends the following next steps:
Updated
Camille’s Answer
Start small, you have a lot of time to explore. There are a lot of free tutorials online to help you start coding. If you really like doing that, then look into a Computer Science class you can take. Some high schools provide intro courses or AP. If yours doesn't and you are willing to balance it, you may be able to take a class at a community college or online for a more structured format.
Updated
Bader’s Answer
Good question... liking and being passionate about something can be different for everyone. The best advise is to try things. So try doing some programming, take some C++ and Java classes, see if you enjoy doing that kind of work. Mostly as a computer science major you will be doing just that, software development for the most part, which will entail a lot of individual coding and team work, but mostly internal facing. So ask yourself, do you enjoy interacting with external clients or just internal stakeholders, do you like being in front of a computer coding for majority of your work time, do you like solving a problem with code. And again, try try try. I was a computer engineering major, did many CS courses, really liked it actually, i liked how i can create code... but I don't think it was something I would do for a career as I enjoyed being on the business side... but I only knew this after I tried things.
Updated
Renu’s Answer
In echo to Michael, I strongly believe follow your passion and see what interest you the most. We don't need to follow the crowd and do what others are doing. Write down your desires, aspirations, goals and make have a mentor/coach who can guide you and see your blind spots.
Updated
Jason’s Answer
These are good questions. I also ask myself the same questions after working in the field of computer science for many years. :)
Computer itself is fun to play with. Computer science is an area that you'd invest a lot of time to explore, learn and master. It is a growing field. Even after you get a degree in it, you will have to keep learning everyday to keep its fast pace of development. You will have to find fun in this pursuing process if you want to like computer science. Do you think you will like it? Do you think you will be willing to invest this amount of time to know this area? If you do, then it is fit for you. I will encourage you to learn more about what a professional will work in daily life, how they resolve issues, what their career paths and options will be like...etc. Give yourself more understanding what computer science life is like. You can start with online search. I wouldn't give you specific websites to look into. You can do your own research. This is a good exercise to see if you like computer science. Mind you, research is one of the beginning work in computer science. Good luck.
Computer itself is fun to play with. Computer science is an area that you'd invest a lot of time to explore, learn and master. It is a growing field. Even after you get a degree in it, you will have to keep learning everyday to keep its fast pace of development. You will have to find fun in this pursuing process if you want to like computer science. Do you think you will like it? Do you think you will be willing to invest this amount of time to know this area? If you do, then it is fit for you. I will encourage you to learn more about what a professional will work in daily life, how they resolve issues, what their career paths and options will be like...etc. Give yourself more understanding what computer science life is like. You can start with online search. I wouldn't give you specific websites to look into. You can do your own research. This is a good exercise to see if you like computer science. Mind you, research is one of the beginning work in computer science. Good luck.
Updated
Piyush’s Answer
To answer this questions, based on the experience, I recommend, dig deep inside you what excites you most. To find this out in the context of whether Computer Science is the right fit for you or not, I have tried to listed down question that you should ask your self - if your answers to these questions are YES, computer science is probably a good fit for you and you will enjoy the field -
1. Do you like problem solving and math ?
2. Do you like algorithms and programming ?
3. Do you like high tech ?
4. Do you like engineering (designs) ?
1. Do you like problem solving and math ?
2. Do you like algorithms and programming ?
3. Do you like high tech ?
4. Do you like engineering (designs) ?
Updated
Mackenzie’s Answer
Hey Erkhes!
I would recommend taking a computer science class if you have any at your school, or if not to take a free online course (codeacademy and code.org are both great places for that). You will know once you start learning how to code if you like it or not. Something I have found with computer science is that once people try it out, they know if they like it or not (kind of like math in that way - people love it or hate it). So once you begin to learn how to code, I'm sure you'll figure out how you feel about it! Most importantly through that process though, make sure you're true to yourself. If your gut is telling you you don't like it - then listen! It's totally okay to not like computer science if that is the case.
Now, let's say you try it out and you absolutely love it! I would suggest to keep pursuing that passion in high school as much as you can, but don't stress out about it too much until you get to college. Just make sure that you apply to colleges with computer science programs so that that option is available if you do choose to go down that route (if you're planning on going to college). Take an introductory CS course your first year of college and see if you still love it! That's what I did - I honestly didn't know if I wanted to do CS at all at the beginning of my college experience, so I took a class and loved it, switched my major to CS, and here I am today working as a full-time software engineer.
To sum that all up, my main piece of advice is to just stay true to yourself! A lot of people think going into CS is a good idea because of the hype around it, but that's the exact wrong reason to do it. If it's your favorite subject in school - go for it! You are still in high school, so you have a lot of exploring to do with other paths as well. I wish you the best of luck with everything!
I would recommend taking a computer science class if you have any at your school, or if not to take a free online course (codeacademy and code.org are both great places for that). You will know once you start learning how to code if you like it or not. Something I have found with computer science is that once people try it out, they know if they like it or not (kind of like math in that way - people love it or hate it). So once you begin to learn how to code, I'm sure you'll figure out how you feel about it! Most importantly through that process though, make sure you're true to yourself. If your gut is telling you you don't like it - then listen! It's totally okay to not like computer science if that is the case.
Now, let's say you try it out and you absolutely love it! I would suggest to keep pursuing that passion in high school as much as you can, but don't stress out about it too much until you get to college. Just make sure that you apply to colleges with computer science programs so that that option is available if you do choose to go down that route (if you're planning on going to college). Take an introductory CS course your first year of college and see if you still love it! That's what I did - I honestly didn't know if I wanted to do CS at all at the beginning of my college experience, so I took a class and loved it, switched my major to CS, and here I am today working as a full-time software engineer.
To sum that all up, my main piece of advice is to just stay true to yourself! A lot of people think going into CS is a good idea because of the hype around it, but that's the exact wrong reason to do it. If it's your favorite subject in school - go for it! You are still in high school, so you have a lot of exploring to do with other paths as well. I wish you the best of luck with everything!
Updated
Zhen’s Answer
Hey Erkhes!
Trying it out is the best way. However, I won't say it determines if you fit or not but determines if you like it or not at this time. Some of my friends/colleagues I know didn't start with computer science at university but switched to computer science later. And don't be scared by a lot of posts online out there, saying computer science requires good mathematics, analytical skills, logical mindset... As long as you find your passion in it, you will find your way to success, especially with so many resources out there.
The most difficult thing in my opinion is to start. As computer science has a lot of different areas, like artificial intelligence, computer vision, human-computer interactions, networks, it might be overwhelming to pick one to start but still, I'd suggest taking a look at some of those areas' introduction, pick the one you are interested in most. Or the better way I think is to ask yourself what problems you'd like to solve first, then research what things in computer science can help solve it, step by step, you will find your way to get engaged with it (Also consider to partner with friends/classmates who have similar interests). If you have any blocks/questions during solving problems, there are a lot of places you can ask questions. One of the most popular is StackOverflow (https://stackoverflow.com/).
Overall, don't underestimate yourself, give it a try, and you'll find your way to success!
Best wishes.
Trying it out is the best way. However, I won't say it determines if you fit or not but determines if you like it or not at this time. Some of my friends/colleagues I know didn't start with computer science at university but switched to computer science later. And don't be scared by a lot of posts online out there, saying computer science requires good mathematics, analytical skills, logical mindset... As long as you find your passion in it, you will find your way to success, especially with so many resources out there.
The most difficult thing in my opinion is to start. As computer science has a lot of different areas, like artificial intelligence, computer vision, human-computer interactions, networks, it might be overwhelming to pick one to start but still, I'd suggest taking a look at some of those areas' introduction, pick the one you are interested in most. Or the better way I think is to ask yourself what problems you'd like to solve first, then research what things in computer science can help solve it, step by step, you will find your way to get engaged with it (Also consider to partner with friends/classmates who have similar interests). If you have any blocks/questions during solving problems, there are a lot of places you can ask questions. One of the most popular is StackOverflow (https://stackoverflow.com/).
Overall, don't underestimate yourself, give it a try, and you'll find your way to success!
Best wishes.