5 answers

what's the most difficult part of being a software engineer?

5
100% of 5 Pros
Asked Viewed 197 times Translate
5
100% of 5 Pros

5 answers

Amit’s Answer

2
100% of 2 Pros
Updated Translate

The hardest part of being a software engineer is not giving up when you feel discouraged. Software engineering is a field that is difficult to pick up and it is really challenging to develop code. There is a famous phrase in software engineering "No code works right the first time". When being a software engineer you need to be strong in the belief that maybe you don't have the right answer now but you are confident you can find the correct solution. People view fixing errors and bugs as annoying but for me, there is no greater feeling than solving a bug you've been wrestling with.

Amit recommends the following next steps:

  • Whenever you have trouble look up your question on stackoverflow
  • Ask for help when developing
  • Watch lots of tutorials on youtube about the different technologies you plan to use.
2
100% of 2 Pros

Somil’s Answer

1
100% of 1 Pros
Updated Translate
Software engineering can easily be one of the most lucrative jobs today. High growth industry, the best companies to work for are mostly software firms, plenty of job opportunities and ability to touch million of lives quickly through your work.

However, there can be many problems plaguing a Software Engineer. This is not an exhaustive list but will give you an idea of the kind of problems software engineers face.

Frustration
The kind of abilities required for programming and software engineering is general, attracts a class of people who are good at problem solving, reasoning, creativity, algorithms etc. However not everyone gets the right job were one get to deal with interesting problems everyday. There can be lot of monotonic work for months where you have to refactor code, implement trivial thing, implementing solutions which are already well defined, review code, write software specification and requirements, debug issues. Once in a few months you may get to work on something interesting but it can be really frustrating waiting for quality work.

Low Job Satisfaction
One of the major attraction in terms of job satisfaction is to work on path breaking solutions that thousands if not millions of people use everyday. But in reality, you may have to work on products which may get scrapped after years of development, products which are being used only internally in your company, products which are so business specific that only few customers use, or worse you may never get to know who is actually using the product you worked on so passionately.

Health Issues
8+ hours of sitting work everyday entails its own problems. Although most of the jobs are sitting jobs today, but specially in programming jobs, you may not need to discuss/ present/ collaborate for days to do your job. Glued to a computer screen daily for weeks can cause headaches, dry eyes, pain in wrist, elbow, shoulder, lower back and neck is common among software engineers who have been in industry for as low as 5 years.

Rapidly changing technology landscape
The technology is changing rapidly, the programming language/ platform/ software you are working on today may be obsolete tomorrow. You need to constantly upgrade yourself and keep on learning new things. It gets difficult as you put on years of experience. Learning new things is easier with a clean slate. A fresh graduate armed with the knowledge of latest technology can soon outpace the experienced engineers if they are not willing to learn.

Odd hours
It's common for software engineers to work odd hours. Sometimes to collaborate with teams in different time zones, sometimes to catch up on your learning plans, and sometimes to finish off work which you couldn't get time for in the office because you were so busy interviewing candidates or understanding business requirements.
This disrupts your sleep cycle and makes you feel tired all the time. This may not be true for all companies and all profiles but it's a common occurrence.
1
100% of 1 Pros

Pablo’s Answer

0
Updated Translate
The most difficult part is to find a challenge everyday.
Usually, your work is to find solutions for problems that a client or company has.
When the work is stuck for external factors, its so frustrating.
For example when there is a bureaucratic process to get the job done, or the client is not sure or doesn't know what needs, or your team is ineffective or is not well organized.
When that happen you have to find ways to break the inertia and be pro active.
0

Jason’s Answer

0
Updated Translate
The most difficult thing I've found is dealing with impostor syndrome...

Being a software engineer is extremely rewarding and equally stressful, if you let it be. Software engineering is one of the few tech fields which doesn't require someone to have a college degree to become successful. With that, comes the thought of not being good enough, not knowing enough, and sometimes just feeling like "I'm just not cut out for this." It's a difficult place to be... there's good news.

We're not alone. There are a lot of kind, generous, and understanding folks in the dev community, some of whom deal with that very thing. They realize that being an engineer is about having a passion and love for what you do and a desire to build and create something for the world to see and use. That passion brings us together as people rallying around a common goal. There are folks willing to mentor and help guide us with kindness and understanding the likes of which I can only describe as amazing. It's a very reassuring feeling.

There are good days and not so good days. And that's okay. The take away here is that... folks have each other's back and we know that in the right environment and the right community we can all flourish and be successful. And that is a great place to be.
0

Youssef’s Answer

0
Updated Translate
The most difficult part is staying motivated and focused when running into a complicated data modelling issues or debugging. Software development is an attractive career option for many but being truly successful at it takes talent and motivation.

The best at it that I have seem take a compartmentalized approach to their work and focus on specific milestones that are tangible and measurable.
0