Skip to main content
13 answers
16
Asked 3249 views

Is software engineering a fulfilling job?

I'm a sophomore studying computer science at a large 4-year university. I've been doubting my major choice a lot, and whether I will be fulfilled later in life working as a software engineer or at a tech company. I work as a math tutor right now, and I really enjoy helping and interacting with other people a lot. I want to do something that makes me feel good, and I've noticed now a days that helping people is what truly makes me feel good. While I really love math, logic and programming, I worry if it is a field that will truly make me happy and fulfilled. I am interested in maybe pursuing research but that direction is not as clear to me as getting an internship and getting out into the tech industry. #technology #computer #computer-science #engineering #science

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

16

13 answers


2
Updated
Share a link to this answer
Share a link to this answer

Mitchell’s Answer

I think the answer of job fulfillment is less a question of your chosen field being "fulfilling" and more about you as a person. For example, I do a little bit of graphic design here and there for friends and loved ones. I have a bit of a knack for it, but I really don't enjoy it. I just do it so my loved ones can save some money. My wife, on the other hand, is a professional graphic designer and loves it. She has a 4 year degree in design, years and years of experience, and has loved her choice every step of the way. My lackluster attitude towards design doesn't make it "less fulfilling," it just might not be for me.

If you're interested in math, logic, and programming as you say, you're already set up for success. A STEM degree is one of the most valuable commodities in today's job market. Perhaps you would find those skills better used in other fields. Robotics, for example, combines software engineering with electrical and mechanical engineering. While software itself remains as this sort of vague conceptual thing, robots move and have weight and are physical, solid things. Maybe that would excite you more. Or maybe software is actually right for you, you just have to find a nice inside it. Maybe you'd like to do simulation research to help with the study of the spread of the next COVID-19. Or perhaps you'd finally get that "oh I love this" moment after you complete your first machine learning project and you realise that you just taught a computer to read your handwriting. There is an unbelievable number of incredible things being done with code. While your for-loops and if statements might seem tedious now, maybe the motivation you need is looking at the big topics that software is addressing. Without the big brains working on custom programs, everything from utilities to medicinal research would be at a standstill.

Find what you love, and you'll do great. Just make sure you're not leaving something potentially inspiring because it's boring in the first half.
Thank you comment icon Thank you for your response! I'm very interested in how computer science and mathematics can be used for research and medicine. I hope that can be a field I can get involved in in my undergrad but I haven't seen a path into it yet. Maybe I just need to continue with the classes so I will be able to apply it one day. Jacqueline
Thank you comment icon It all depends on the university you end up at. Many research universities have programs where undergrads can assist graduate student research programs and earn credit that way. I'm actually shopping for universities right now and there are a lot of programs like that in software engineering (my projected major as well). Mitchell Harrison
2
1
Updated
Share a link to this answer
Share a link to this answer

Mark’s Answer

Only you can determine if your chosen path will be fulfilling. Sometimes when you get deeper into something, you see another side of it that may change your opinion to the more positive or the negative. Your school should have a career counseling department that should be able to help you identify opportunities in your chosen major. Research the positions to find out what the necessary requirements are. Go on LinkedIn and search for people in the field and make a connection. Communicate with them to get a better perspective of the roles and responsibilities.

Good luck.
Thank you comment icon Thank you for this advice. I have not gone to career counseling yet, I've only asked career questions to my academic counselor. I will try that soon. Jacqueline
1
1
Updated
Share a link to this answer
Share a link to this answer

Matthew’s Answer

Your question struck a chord with me. I took computer science in university and tutored math. Nowadays I find myself doing security research and development for a tech company. I had a lot of doubts about my chosen career along the way. Having doubts that a particular career path will be fulfilling is normal, and thinking about other options can give you valuable perspective. Sometimes you only realize what you truly want to do by doing something else and discovering you hate it.

A career also doesn't have to be the one and only thing that gives you satisfaction. I find my job a little narrow and isolating at times, so I spend time volunteer teaching at high schools and helping students where I can. One of the advantages of the tech industry is that you typically have flexible hours and are paid well, so you can afford to spend a lot of your time helping others. When you've had a rough day at work, nothing buoys your spirits back up quite like spending your evening helping a student learn something new.
Thank you comment icon Thank you very much for this response. Its good to hear that the hours can be flexible enough to allow for volunteering outside of work. I didn't know you could volunteer to be a teacher/tutor at a high school, I imagine that is very fulfilling thing to do outside of work. Jacqueline
Thank you comment icon Do you have suggestions for other ways to try something new besides taking different classes? I've taken a lot of classes in other fields that don't necessarily count for my degree, and I am still undecided... Jacqueline
Thank you comment icon I spent long enough taking non-CS classes that I have another completely separate degree, so I'm not sure I'm the best person to ask ;) But honestly there's no such thing as too broad experience. Traveling can help give you ideas or a different perspective. Sometimes just spending time with people who are very different to yourself can be enlightening. Something I found helpful was a more restrained version of "say yes to everything" where I actively seek out things I don't think I will enjoy. You can learn a lot about yourself by getting out of your comfort zone -- whether it's realizing you actually like something you thought you didn't, or whether it's just coming to understand your own preferences more deeply. Matthew Fernandez
1
0
Updated
Share a link to this answer
Share a link to this answer

Nadia’s Answer

Luckily, nowadays it's getting easier to combine different interests and career paths.
In my company, it's possible and - what's more important - recommended to take part in additional projects and initiatives. Besides being engineers, my colleagues led technical sessions for non-technical people, so they teach them how to code, cooperate with universities, high schools or even grad schools to encourage youngsters to work in IT and many others. It's also possible to choose your own way to contribute to society, as we have 5 extra days off to support charity.
My point is that becoming an engineer doesn't mean that you need to give up other aspects. Give yourself time, but in parallel, develop your other interests such as teaching and helping others.
Your question reminds me about one of the You Tube coding teachers, whose career interests sound similar to yours: https://www.youtube.com/watch?v=8TnBZ8rom9c
Thank you comment icon Thank you very much for this response. I have that video marked in my watch list! It is cool that your company supports their engineers to pursue other activities. Jacqueline
0
0
Updated
Share a link to this answer
Share a link to this answer

Craig’s Answer

Yes it can be, depending what you like to do and also the type of software you write or test. I used to write embedded applications and operating system code test for cell phones, I enjoyed it as it had lots of exposure and many people used my work and I was happy to answer questions on how it was configured etc.
0
0
Updated
Share a link to this answer
Share a link to this answer

Naina’s Answer

Hello,
According to me fulfilling job is where you really enjoy what you do day to day and connect with the job that you are doing.
If you like problem solving, interacting with people, coming up with new ideas, then software programming is definitely the area for you.
Software programming is fun because you can be creative and do effective problem solving together. When you build your code together and deploy those solutions, its really good to see those solutions being used by people and making an impact to them. And as you have mentioned that you like Mathemeatics, logic and programming , you will definitely relate to programming.
Also since you like interacting with people, IT is a great place to communicate and collaborate with people, suggest ideas and learn from them.

While only you can understand and figure out if this is the correct field for you, these few things about Software programming may help you to decide that.

Good Luck !!


0
0
Updated
Share a link to this answer
Share a link to this answer

Catherine’s Answer

Jacqueline, only you will be able to determine whether software engineering will be fulfilling for you, but I have had the experience of working both in software engineering and a more traditional "helping" field. I used to be a teacher. I ended up changing careers to become a software engineer, and was concerned that I would miss helping out people. But I actually find that I still have plenty of opportunities to feel fulfilled by helping others.

When programming you usually work closely with a small team. I've had the opportunity to mentor and teach less experienced software engineers and help them move forward in their career. I've also spent part of my career working as an engineering manager, and closely working with my team to help them develop their career. About half of my day is involved directly interacting with one or more people, either solving a problem together or planning future work. Sometimes, I even have the opportunity to speak with clients and get feedback on our product. The stereotype that programmers never interact with other people has not been true in my experience.

Additionally, software engineering has given me a flexible work schedule and a good work-life balance, so I've been able to pursue a number of volunteer opportunities that interest me.

So, although I don't directly help as many people as I did as a teacher, I still feel that I help others every day in my job, and have time outside of my job to do that. And I am fulfilled in other ways through software engineering. Programming allows me to continue learning every single day, which is something that I find very fulfilling.
0
0
Updated
Share a link to this answer
Share a link to this answer

Melinda’s Answer

I love coding and have been a programmer/software engineer in the past, but it can sometimes get a little lonely and isolated when that's all you do day-in and day-out.

In your question, you mentioned " I really enjoy helping and interacting with other people a lot." One thing to consider is that as you progress in your career, you may have chances (or make chances for yourself) to branch out in other ways that you might not think of initially - for example, getting into project management or people management. In many larger companies, you may start out in a technical position, but as you go up the ladder, there are opportunities to move into more management-type roles rather than staying in the trenches coding all day.

I am now a business analyst, and I still get a chance to think technically and to code a few things here and there, but I spend a lot of my time coordinating work with offshore resources, meeting with end users on business requirements, and figuring out how to get things done. I didn't have this job in mind while I was in school (master's in EE/Computer Engineering focus) but enjoy it now that I'm here.
0
Updated
Share a link to this answer
Share a link to this answer

Hui’s Answer

Hi Jacqueline, I am Wei and that is me. I graduated in 19' in Industrial Engineering and I have the same thoughts as you are having while I was in college. I have had an internship in a Research and Development team where I worked along with many programmers. They spend 6 hours a day is in their own cubicle and 1-2 hours in meetings (virtually or in conference rooms). They're funny and they enjoy their nerdy memes, but they have a life outside of work. One guy owns a farm and maintains it on the weekends, one continues to pursue his master's degree so he spends his free time learning and completing assignments, and then my buddy spends his summer making his guitar. What do you want to do in your free time? Who do you want to become?

The question you are asking is indeed hard to answer as it will depend on you. However, I would advise finding the internship or job shadow someone to see whether what they do interests you or not. As long as your curious, no matter what you study you'll continue to search for things you want to learn. Let me assure you that besides finding a job fulfilling, it should also have factors of 1) are you working along with your strengths (including ones you stated already) 2) are you passionate about it (which is the toughest part because some don't find it) and 3) is the job valued by the society or is there a market for it. Speak to your career services and professors to explore options available to you.

If you want to do research or advance in your study, your professors in your department are a great option to start with gathering ideas. With this said, I sense you are interested in teaching and if that's the case then continue your education if you can afford it. If not, work for a year or two to gather experience and then go back to school. It'll always be there for those who want to learn. A topic of research you can look into is machine learning (supervised vs unsupervised).

The worst thing you can do it not do anything about it. So look around and I hope this is helpful for you.

-Wei
Thank you comment icon Thank you for this answer, I find it very helpful. I have a software engineering internship at a large company coming up soon that I am nervous for but also excited for. I would really like to pursue research or teaching, but haven't found an opportunity for that yet with my professors. I will see how it goes. Thank you. Jacqueline
Thank you comment icon Best of luck. Hui Liu
0
0
Updated
Share a link to this answer
Share a link to this answer

Rohit’s Answer

I guess that the cliche answer is to figure out how to build something and seeing the result as we build it. Then thinking of how it will improve someone else's life even if just a tiny bit.

Everything each programmer develops contributes to the existence of technology that improves people's life. Sure, maybe my contribuition is very small in this world, but it's still part of it.

"My life amounts to no more than one drop in a limitless ocean. Yet what is any ocean, but a multitude of drops?” - Cloud Atlas

Also, programming can actually be very creative. It is about how creative we can get when figuring out solutions when facing different situations with limiting sets of tools. Sometimes tricky problems can be frustrating, but the happiness when solving them is immense. Being able to share the victories (sometimes humorous) is also very satisfying.

And can we imagine the potential changes and improvements we can do with technology? Being a programmer means being able to build things where one's creativity is the limit.
0
0
Updated
Share a link to this answer
Share a link to this answer

Michael’s Answer

To me, a fulfilling job is one where I can help make someone's life a little easier.

I think one of the advantages to working in software is that your work can be deployed to thousands to millions of people. Something as simple as a to-do app can make many peoples' lives a little less chaotic.

However, you won't always get the fulfillment of seeing your work in action. For example, it is likely that most people that use your software are people that you will never meet or hear from.

If you share a similar definition to a fulfilling job, it may be helpful to research tech companies that have a meaningful mission... Or look at the apps/websites you use on a daily basis and look into the companies that develop them. Would working on the apps/websites you use daily be fulfilling to you? An alternative would be to look into tech non-profits that hire software engineers and see if you are interested in the problems that they are tackling.

0
0
Updated
Share a link to this answer
Share a link to this answer

Adrian’s Answer

I am saying yes. Basically if one is a person with a strong passion for computer science and technology, this is a very good and rewarding career path. It subsumes a lot of one's abilities and enables developing them.It is part of information technology and it relates to a lot of domains nowadays - math/data science, finance, biology ....
0
0
Updated
Share a link to this answer
Share a link to this answer

Tanya’s Answer

Hi Jacqueline,

Like Matthew already mentioned, having doubts about your major/future career is so normal. I can't tell you how many times I've had them while studying computer science in college and during my jobs as well!

Similarly to you, I also enjoy helping and working with others. A CS elective I took in college that I really enjoyed is Human Computer Interactions (HCI). I think this might be a good research topic for you to look into since you seem to be interested in learning more about the intersection of technology and humans. HCI studies the design and use of computer technology, while focused on the relationship and interfaces between people and computers.

You'll find that as you take more higher-level classes throughout your junior and senior year, you can choose electives that are interesting to you. Pay attention to those topics and see how they can align to a future job, company, or industry that will be fulfilling for you!

Outside of school, what helped me realized that I could find software engineering fulfilling was gaining different types of industry experience and being in one that excites me! Having a variety of experiences from working on different teams and products as well as different industries (ie. eCommerce, games, education, healthcare, space, etc.) can help you figure out and narrow down where your interests lie within the field of technology. On the side throughout college and my jobs, I have always really enjoy mentoring CS students and participating/volunteering with organizations for womxn in STEAM. Working directly with and helping students makes me feel especially fulfilled!
0