Skip to main content
14 answers
15
Updated 1903 views

What do you like best and least about your occupation as a Software Engineer?

What are the advantages of being a software engineer over other computer science-related fields?

What branches of computer science do you suggest besides being a software engineer? (Besides cybersecurity, I don't wish to be in that field)


15

14 answers


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

Prasad’s Answer

Advantages of working in big tech include dealing with the latest technologies, earning higher salaries, and experiencing faster career growth. However, there are some downsides, such as long working hours, especially at the beginning, intense competition, and the need to keep learning new technologies and tools.

Currently, the most in-demand skills in software engineering are Artificial Intelligence, Machine Learning, and Generative AI. You can also pursue roles like Data Scientist or AI Data Engineer. Other valuable skills include mobile app and web development, game and VR development, and business application development.
2
1
Updated
Share a link to this answer
Share a link to this answer

Minigrace’s Answer

What I Like Best:
- Solving problems and being creative
- Feeling proud of achievements
- Always learning new things
- Making a difference in the world
- Having flexible job options
- Earning good money and having career growth
- Working with others and being part of a community

What I Like Least:
- Stress and risk of burnout
- Getting caught up in success and comparisons
- Struggling with work-life balance
- Handling annoying tasks

In summary, software engineering is great for those who love being challenged, using creativity, and making an impact. But it can be tough due to its demanding nature, the need to keep up with changes, and the risk of burnout without proper boundaries.
1
1
Updated
Share a link to this answer
Share a link to this answer

a’s Answer

Aditi from Rochester -

There are many advantages to being in the Tech industry:

Good Pay
Mentally challenging, lots of variability so you don't get bored
Opportunity to be creative and solve problems

Disadvantages:

Lots of competition
Fear of AI taking your job (over-hyped, in my opinion)
Lots of solitary time, daily frustrations getting things to work properly

If you have a target industry, find out what technologies, automation, and problems are present in that industry, and focus on those.

Always good to study human-to-human communication, technical writing, problem solving, business, and business efficiency.

Very best wishes!

- Blaine from Oregon
1
1
Updated
Share a link to this answer
Share a link to this answer

Mayank’s Answer

Hi there, here are some of my thoughts :

What I love most:

🧠 Creative Problem Solving: Every day brings a new challenge—whether it's optimizing a system, debugging a tricky issue, or designing a new feature. It’s like solving puzzles that actually help people.
🌍 Impact at Scale: At companies like Microsoft, a single line of code can impact millions. That’s both humbling and motivating.
🔄 Continuous Learning: Tech evolves fast. You’re always learning—new languages, frameworks, or even AI tools like GitHub Copilot.
🧑‍🤝‍🧑 Collaborative Culture: Despite the stereotype, software engineering is highly collaborative. You work with designers, PMs, data scientists, and customers.

What I like least:

🪫 Burnout Risk: Deadlines, long hours, or unclear requirements can lead to stress if not managed well.
🧩 Ambiguity: Sometimes you’re building something without full clarity on the “why,” which can be frustrating.
🧪 Debugging Legacy Code: Fixing old, undocumented code can feel like archaeology—interesting, but exhausting.

Data Science & Machine Learning :
Great for those who love math, stats, and storytelling with data.
Tools: Python, TensorFlow, Azure ML, Power BI.

Human-Computer Interaction (HCI) / UX Engineering :
Focuses on designing intuitive, user-friendly systems.
Combines psychology, design, and tech.

Product Management (Tech-Focused) :
Ideal if you enjoy strategy, communication, and guiding teams.
Many PMs start as engineers and transition into this role.

DevOps & Site Reliability Engineering (SRE) :
Focuses on automation, infrastructure, and system reliability.
Tools: Azure DevOps, Docker, Kubernetes.

Embedded Systems / IoT :
Combines hardware and software—great for those who like tinkering.
Applications in automotive, healthcare, and smart devices.

Game Development :
Creative and technical, with roles in design, physics, and AI.
Tools: Unity, Unreal Engine, C++.

Being a software engineer is like being a digital architect—you build, break, and rebuild systems that shape the world. But it’s not the only path. The beauty of computer science is its diversity of roles—you can find something that fits your personality, interests, and lifestyle.

If you're curious about any of these paths or want help choosing one based on your strengths, I’d be happy to dive deeper!
1
0
Updated
Share a link to this answer
Share a link to this answer

Nick’s Answer

Advantages of a Career in Software Engineering

1. High Demand and Job Security
Software engineers are needed in many industries, giving you strong job security and lots of career options. You can choose a field you like and even switch to another without losing your skills. Your knowledge can be used in finance, healthcare, entertainment, and more, leading to roles in management or even starting your own business.

2. Good Pay and Flexibility
Software engineers usually earn high salaries, and there are chances for bonuses and stock options, especially at top tech companies. Many jobs offer remote work, flexible hours, and the freedom to work from anywhere.

3. Learning and Creativity
Technology changes fast, so you will keep learning and growing, which can be exciting. You get to solve real-world problems, create products used by many people, and add your own creative ideas to your work.

Disadvantages of a Career in Software Engineering

1. Fast-Changing Technology
Always having to learn new languages and tools can be stressful and take a lot of time.

2. Sedentary Lifestyle
Sitting at a computer for long hours can lead to health problems if not managed well.

3. High Pressure and Deadlines
Projects often have tight deadlines, which can mean long hours and possible burnout.

Emerging Fields
AI, machine learning, and data science are popular right now. If you're interested, fields like ERP, ETL, and robotics for automation are also great options.
0
0
Updated
Share a link to this answer
Share a link to this answer

Akash’s Answer

Hello! Here are some of my thoughts:

Advantages:
1. Great pay and benefits.
2. Computer Science offers endless opportunities. You can easily switch between areas. For example, some of my colleagues moved from frontend web development to backend engineering or from general software roles to AI engineering. This keeps things exciting if you love learning new things.
3. You get to meet smart, like-minded people. This can really help you grow your professional network.
4. Hybrid or remote work offers excellent flexibility.

Disadvantages:
1. Burnout can happen. You're often involved in the development process, planning, and more. If deadlines are tight and expectations unclear, it can be stressful to manage everything.

General thoughts:
Be ready to learn quickly and embrace feeling a bit lost at first. Imposter syndrome is common, but pushing through this phase with an open mind is important. Also, don't hesitate to use AI tools, as they will become the standard.
0
0
Updated
Share a link to this answer
Share a link to this answer

Susan’s Answer

Pros
Problem-solving and creation. At its core, software engineering is about solving real-world problems with technology. There’s a deep satisfaction in writing code that turns into a functional solution whether it’s a new app, an automation tool, or a platform integration.
A single engineer’s work can impact thousands or millions of users. That kind of leverage is rare in other professions.
Software engineers are in high demand across all industries. You can work in healthcare, finance, entertainment, logistics virtually anywhere.
The field evolves constantly. While this can be demanding, it keeps the work intellectually stimulating.
Cons
Maintaining old code or working with outdated systems can be frustrating, especially when business decisions prioritize speed over code quality.
Non-technical stakeholders often underestimate the effort behind software features, leading to unrealistic expectations.

This career can be incredibly rewarding, especially being at the forefront of technological advancements. Over the years, I’ve witnessed the introduction of the mouse, the rise of Windows, the emergence of online social media, the shift to cloud-based applications, and now the rapid evolution of artificial intelligence. It’s been a front-row seat to history in the making.
0
0
Updated
Share a link to this answer
Share a link to this answer

Terry’s Answer

I love the creativity and problem solving building real solutions that impact people is rewarding. The field moves fast so there's always something new to learn, which keeps things fresh. Good pay is a plus as well as being remote.

Least: It can get mentally exhausting, especially with tight deadlines or unclear requirements at times. Managing your time is an important thing to do when tasked with assignments.
0
0
Updated
Share a link to this answer
Share a link to this answer

Velu’s Answer

What we enjoy:

- Creating meaningful products that people use
- Tackling difficult problems and getting in the zone
- Discovering new tools and technologies
- Working with intelligent and curious teammates
- Having the flexibility to work remotely or on our own schedule

What we find challenging:

- Constantly changing tasks or having unclear priorities
- Dealing with tech debt and rushed decisions that cause problems later
- Focusing more on processes than results
- Using too many tools to accomplish one task
0
0
Updated
Share a link to this answer
Share a link to this answer

Deepak’s Answer

Honest software engineer answer:

Pros:
- You have a lot of freedom with your time
- You can work from home
- You can have a good work/life balance with the right job
- You don't need to talk to many people in person

Cons:
- The field is always changing, so you need to stay updated
- It can be unpredictable
- Some projects can lead to burnout
0
0
Updated
Share a link to this answer
Share a link to this answer

Syed Hammad’s Answer

Aditi, your question is great! Being a Software Engineer has many rewarding aspects:

1. I love solving complex problems and creating smart solutions. Whether I'm designing a new feature or fixing a big issue, it uses both my analytical skills and creativity.
2. Technology is always changing, so I am always learning and growing in this field.
3. Plus, many software engineering jobs offer flexible schedules or remote work, helping me balance work and life better.

There are some challenges too:

1. Switching between tasks, bugs, and meetings can disrupt my focus and make it hard to concentrate deeply.
2. The work is exciting, but the fast pace can be tough. Meeting tight deadlines and the pressure to deliver quickly can sometimes lead to burnout.

In summary, I love the problem-solving, creativity, and learning opportunities. The flexibility and chance to make a big impact are also very rewarding. However, frequent task switching and tight deadlines can be challenging. Finding a balance between speed and quality is important. Overall, the job is fulfilling, though it does have its challenges.
0
0
Updated
Share a link to this answer
Share a link to this answer

Teklemuz Ayenew’s Answer

As a software engineer, I really enjoy the creative side of problem-solving and find it incredibly rewarding to build applications that can reach and help people all over the world. On the flip side, I find it challenging when there's little or no room to learn or grow, when I have to work with undocumented code, sit through too many meetings, or spend a lot of time debugging without the right tools. I recommend choosing a branch of computer science based on your strengths, interests, long-term goals, industry trends, and the current demand in the job market. In addition to software engineering and cybersecurity, highly demanded and rapidly growing fields include data engineering, cloud computing, computer vision, blockchain development, bioinformatics, robotics, the Internet of Things (IoT), computer graphics, embedded systems, and digital forensics.
0
0
Updated
Share a link to this answer
Share a link to this answer

Jack’s Answer

Hi Aditi,

Working as a software engineer has been amazing because there's always something new to learn. The possibilities are endless, and it's exciting to create things that help many people. The more you know, the more you can do.

Sometimes, companies might limit you to certain tools, but it's important to explore beyond them. When you learn to create without relying too much on these tools, you become truly valuable.

Loving problem-solving is essential in this field. Every challenge is just a puzzle to solve, and there are plenty of them here. Creativity is important, and having a variety of skills makes finding solutions easier. Keep learning and exploring!
0
0
Updated
Share a link to this answer
Share a link to this answer

Terri’s Answer

I like my colleagues the best and I like knowing how technology works, but I like my colleagues better. Overcoming less physical movement in your job is something to consider when deciding on this career path.
0