5

I’m a junior developer (8 months post college experience) on a team which is likely to lose 4 of 6 core developers in the next 3 months due to resignations. Should I leave too?

For a variety of reasons, we are going to likely lose 4 out of 6 developers on our project in the next three months.

1 is leaving as he was lied to about the job. He is stuck doing JavaScript frontend work as a backend developer.

1 is a star dev taking a break from the likes of Amazon and Salesforce.

1 is another junior currently updating his LinkedIn aggressively. He often gets the most points of work done a sprint, but is also under appreciated as he doesn’t make himself known.

1 is afraid that Java/Kotlin/C++ have limited job prospects going forward. He is spending half his time at work learning Python for AI.

I am wondering if this means I should be leaving as well between the massive loss of capability (which will set our project back months) and I don’t want all the pressure to be on me as the most senior person left on the project besides my manager.

I’m also concerned about what guy 4 says about Java/C++/Kotlin. I don’t want to be unemployable after 3 years spent developing on Spring and Hibernate. We also use SQL (specifically PostGres) which he also thinks is dying out.

The overall conceptual knowledge is solid as our system serves millions of citizens and millions of dollars (the project is being iteratively deployed). so it isn’t a toy, but I’m mostly wondering whether it has a future or whether the project is destined to fail simply due to losing so many people.

The other core developer is getting promoted to overall software lead, so he can’t focus on this in a month either. I would be left as the only developer on the project. I would be out of my depth doing it alone, but until replacements arrived, would be the only one on the team and deadlines don’t seem to move easily here.

I don’t have any other reasons to go as the pay is good and the management is flexible if a bit stingy on tooling. Regulations are also a pain, but that’s just another requirement.

If I were to stay, is there anything I should encourage before the exodus?

If I were to go, how do I explain jumping ship after just 9 months? “I quit because everyone else did too” is not inspiring.

12
  • 1
    How is the documentation and what percentage of the software do you know? Commented Feb 8, 2020 at 17:40
  • 1
    Documentation is sparse and I know maybe 80% of the frontend and 40% of the backend. I don’t know anything about the scheduled jobs though.
    – Sleepydog
    Commented Feb 8, 2020 at 17:42
  • 25
    I call BS on the claim that Java, C++ or PostgreSQL are not useful in the near future. These technologies are more like pretty safe bets for a while.
    – Helena
    Commented Feb 9, 2020 at 18:26
  • 21
    C++ / Java / Kotlin have no future? I had to chuckle at this one. Commented Feb 10, 2020 at 0:20
  • 3
    Cobol has no future, but it's had a pretty strong "present" for the past 50 years
    – user48588
    Commented Nov 19, 2020 at 11:02

5 Answers 5

23

Firstly, to address your issue with potentially being unemployable: if you can write good code in one language, you can learn to write good code in another language fairly quickly and easily, and companies (that you actually want to work for) will realise that. Your coworker number four is also somewhere between "just wrong" and "using very odd standards". Java and C++ are two of the most popular programming languages in the world and that isn't going to change anytime soon.

As far as what you should do, there are two basic things to start with:

  1. Ensure that the team remains able to do its job, or at least do absolute bare-minimum maintenance stuff to keep things from falling apart in the short term (so that your job keeps existing), and also train up new hires quickly - to start with, this means learning as much as you can from the other developers before they leave.
  2. Talk to your boss. Firstly, about delaying deadlines for a bit while you hire new people and train them up, and secondly about promotions - step 1 here is basically "start doing the job of a senior developer", so step 2 should be "get paid like a senior developer".
13

It's going to be tough for your company to lose your colleagues.

But, I respectfully suggest you look at it as a opportunity. Your manager is probably more frightened than you are about the situation. They are surely laying awake at night asking how they will deal with the fallout ... missed deadlines, morale problems, etc. You've named many of the issues in your question. If you're worried about them, you can bet they are too.

Go to your manager and start a conversation about how your team will work together in this crazy time to come. Tell them you're on their side. Offer to help. Start this conversation as soon as possible, and don't wait for the people to leave first.

Offer to do your part to help with the transition. If you can, get your co-workers to endorse a common effort to do your best to make it all work as well as possible.

For you, you'll get a field promotion to "senior dev".

For your manager, he'll have a strong team effort to show other managers.

12

Lots of questions:

Is Java with Spring+Hibernate going to die out? I am not seeing this anytime soon. (This may depend on region). Yes, more and more projects are started with something else, but there are still new projects that get started with this. Also, It is still a growing fields, so while the percentage of spring may be declining, imo the absolute number of new projects is relatively constant. Not to mention all the old projects that will be alive for years to come.

C++ imo is on a very slow decline. So slow, that you can still earn a nice living because programmers are getting scarce, but you still find jobs. (Again, this may depend on region).

Kotlin: I don't know.

Postgres: More and more projects use fancy NoSql databases. But if a good old relational database is what you need, postgres is great! I know plenty of projects who use Postgres, so this is definitly a good technology. The last Python AI project I was in used a postgres to store the data that the frontend displays.

Why is the StarDev leaving?

To make up your mind, you should analyse the root problems. It's normal that you have to switch up work somewhat. I have been hired as backend dev, the first thing I did on a certain project was developing a GUI in PyQT alone. Some people were appaled when hearing that, I was excited! Learning new stuff! Of course, that depends on where you are in your developer life. As a beginner, I would have been afraid. I wanted to get a solid base. Now that I got a solid base, learning new stuff is right up my alley.

The not appreciated part of the junior developer is a possible red flag. Does he do the most work, or the most points? In other words: Does he game the system? If yes, imo it can be somewhat right that he is not as appreciated as he think he should be. If he doesn't game the system, then lack of apprecation can point at deeper problems.

If you wanna stay: if 5/6 people leave a project, you got no other option than delaying deadlines. Even if you immediatley replace those 5 people, you need some ramp up. The only chance to keep those deadlines is start training the replacements before these people leave! Which may not be feasible and is propably way beyond your power.

So you insist on delayed deadlines. And you also insist that you can't do everything the 5 other people did. Not should, nor may, you will insist. Everything else is lunacy and just delays the problems. Some manager may be tempted to push you into this so he can report a "solution" upwards. But this will not work. Getting some replacements is crucial. Maybe people from other team can help/switch? At least, get code reviews and coaching from somebody else. Doing everything on your own is though when you dont know best practices and stuff. Even as experienced developer, getting my code reviewed helps me make better code!

Last question: Why did you go? Rephrase that into something along the lines of: -I want a learning environment where I can learn to be the best I can be from people better than me! - So then why did you leave? - All the other people left, and I had nobody anymore to learn from.

They propably catch the undertone that crazy expectations got put on a junior dev, which they know you are after reading your CV. Also, this filters out companies that want you to work on projects alone. Most importantly: This gives a positive picture of what you seek for!

4

Whilst it isn't much fun watching rats deserting a sinking ship, I would encourage you as has another poster to use this as an opportunity and to see how far you can take advantage of the situation. I don't mean this in a devious way, but in a way where you take on work that you otherwise would not get a chance to try because of your lack of seniority. In Australia we call it a free kick. You get a chance to take on challenging work with no expectations of success and no downside if you fail

1

If you should leave depends on what you want your job to be. Do you want a relatively low-responsibility job in a well organized team with a clear-cut area of expertise for yourself? Then you should propably start dusting off you CV, because it doesn't sound like you're going to get that at your current company anytime soon.

If you like to show that you are a good improviser, can take on new responsibilities as needed and maybe are even able to guide other peoples work, this is your time to shine!

However, you should avoid to base your decision on what technologies others think will die out soon. Many technologies declared dead a decade ago are still around and you could comfortably earn your living with them. Those predictions mostly turn out to be wrong.

Also, have you had a talk with your manager about your thoughts? He'll be worried as well, because managers don't like their projects being set back for months. Try to find out what he thinks about all of this and how his plan to mitigate the damage looks like. Find out if you're on the same page, because that's much more important then the stuff your leaving coworkers think.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .