Each month, we invite you to ask your questions anonymously to the talent club community. We select 3 questions, let the community answer them, and write a summary article for you.
Let’s get directly to the heart of the matter, with the first question.
❓ Question #1
« Is a Ph.D. title valuable as a software engineer? »
The answers we collected all point to the same conclusion: it depends. Having a Ph.D. as a software engineer is usually not that useful, but it could be valuable in some particular cases.
We received a lot of answers (thanks to all of you 🙌), so let’s summarise them into 3 points.
1. Having a Ph.D. is mainly useful for cutting-edge industries or niches
If you work on a bleeding-edge technology like artificial intelligence, computer vision, geoprocessing and other super-specialised fields your input will be valuable to guide the technological breakthroughs.
If you are aiming to work in research, cutting-edge technology or on a project that needs specialised knowledge that your PhD gives you, then yes, it's useful.
To me, it depends on the industry and the type of job. If you are working on more foundational topics (data science, simulation, low level) then it can be valuable.
However, in most cases, having a Ph.D seems to be an overqualification.
For most roles you'd be overqualified and would probably better spend that time getting practical experience.
For more software engineering work, hands-on experience is more valuable and Ph.D. might be an overqualification.
2. Field experience is more valuable than a Ph.D.
Another important point was mentioned in the answers we received: the years you spent doing your Ph.D. are years you didn’t spend developing your field experience.
This could make you less attractive when applying for a software engineer position:
Unless you want to become a researcher there’s no value in getting a Ph.D. prior to becoming a software engineer. I’ve forgone an opportunity to do a Ph.D. to work at a Silicon Valley start-up and looking back, I’ve learned so much more from the people who used to work at Microsoft, had their own companies sold to 10s of millions that I would’ve never got from the best Ph.D. If I were to hire you, I’d value that one line of code that was sent to production, 10x more than the one you wrote in your PhD thesis.
It is useful but for a limited number of jobs. as they deviate a lot from the normal path of an engineer (i.e finish uni, maybe masters, then straight into working in a team on projects). You give up that experience for X years working on a niche thing that 95%+ of software companies won't need or care about.
If you are looking to work as an application software engineer, it may be less useful because you will have a lot of competition from engineers who have spent those years gaining industry expertise and experience in the standard coding practices where you may fall short.
3. Having a Ph.D. as a software engineer has some advantages
It shows some specific skills:
Most companies are more focused on development skills. BUT again, doing a Ph.D. shows that you know how to discover stuff, you know how to write, how to be organised, how to think deeper. It’s an indication of good quality, but it’s not all.
It might help you to get some jobs in big tech companies:
Sometimes, you can find software engineering jobs in places like Google or Microsoft that require either Ph.D. or a good history of research. But it is not required in many other cases
It could help you to get your first job:
Ph.D. holder here. It's valuable only to add a line in the CV to get your first job, later is not useful :(
The following answer concludes well and adds the “financial support” dimension:
The simple answer is No. But it could be "yes" if:
- The company is small or medium, where software engineers also do the research
- You develop a specialised algorithm or product in your PhD domain
- The company needs PhD employees to get some financial support
❓ Question #2
« How do you know when it's time to move on from a job? »
Tough question here, for which you provided 2 types of answers: short remarks and frameworks with questions you should ask yourself. By the way, we also wrote an article about defining what success means to you, you can read it here.
1. Do these apply to you? If so you might want to start thinking about a move
When you start hating Monday.
When you are working on problems that no longer excite or challenge you.
When you feel too much comfortable. When you stopped learning. When you feel that you can do your job on autopilot. At least in terms of professional development :)
2. Questions to ask yourself if you want to go deeper
Some people are more analytical in the way they answer this question.
I usually analyse two aspects:
1. Can I still influence the direction of my team or company using my knowledge? In one word: am I still relevant here?
2. Is my job making any difference in my life? Is this job contributing to my personal or professional growth? If the answer is 'No' to any of these questions, I start thinking about changing.
When trying to make this decision, I ask myself the following questions:
- Am I happy with my salary?
- Am I happy with my manager and peers?
- If not, is there any way to change this?
- Am I happy to come to work every morning?
- Am I learning something new regularly?
- Is there an opportunity for faster growth or compensation in the future that is guaranteed?
- Is there something better out there that has caught my eye?
This list is not exhaustive. You will have your own questions to add to this.
Being happy at your job doesn't always mean that you should not change.
Sometimes even if you're happy where you are, you like another job more. That's a sign that you should nurture your ambitions. Always remember that you can still job hunt without leaving your current job, so there is very little risk in looking around. Some people feel guilty about leaving their current job for any number of reasons. Please don't. Look out for yourself first.
❓ Question #3
« Should I do two full-time remote jobs? Obviously, I can manage the time. »
For this question, people mostly agreed on this simple answer: no, you should not. Here are various reasons:
1. It’s too difficult and stressful to manage two full-time remote jobs
In the first few weeks, it might feel this is a good idea. But it's not and your body will quickly find a way to tell you about these long hours spent sitting on a chair just working…
You 100% cannot manage the time. You will have clashing meetings. You will not be able to work for 15 hrs/day so you will probably spend less than 8hrs at each job. Your performance will suffer at both. If you do the jobs at the same time you will have too much context switching. Now, is it doable? Absolutely. The only positive is the double income. Everything else is a downgrade. If you think people won't notice, they will. I had an individual like this in my team and we caught him before his probation ended.
Not recommended. I had the experience of working in 2 separate agile teams at the same time and it was stressful and unfulfilling. The only reason to work 2 jobs would be for the money, but the SE jobs pay well enough if you're qualified.
2. It goes against labor laws in some countries
It depends on where you live, Labor laws are still a thing, you need to comply with them else you and your employer risk a lot. For instance, in Germany, you can't work more than an average of 48h a week over a period of six months.
3. It will probably go against company policy
I don’t think this is the right question to ask because I don’t think any company would allow for it. Usually, your full-time contract would say that you’re to give your 100% for your company and any extra jobs would have to be agreed with them. But if you’re asking for more work, then your company might think that you’re not giving your 100% to them, you know what I mean? So no, two full-time jobs is a no as a software engineer.
Thanks to all participants! You’ll be able to ask new questions next month, so keep an eye on your mailbox 👀