When to leave your programming job
Programmers often come to me to discuss whether to resign or not, and whether it is wise to resign now. This is a very serious topic. I usually do not give suggestions easily, because this decision will have a profound impact on the programmer's career and life.
Many people want to resign, but they are stuck because they are afraid of being labeled as "Love to quit. From the results I have observed, many programmers tend to stay in the old company for the so-called "reputation", but in the future they will be compared, the experience and career development prospects of programmers who "stay in the old company" are far inferior to those who frequently change jobs. As I have said before, some companies are even very willing to see some positive personnel flows in their positions.
Programmers often resign for some common reasons (such as product release failure, downsizing, and reduced compensation/benefits. Some may say that the experience learned from a company on the verge of bankruptcy is far more valuable than that learned from a successful company. However, if you wait for the "resign" alarm to sound, and happen to encounter a false alarm, your career will be gone.
When should I resign?
First, you have to become the "best" programmer in the company, or you have no one to serve as a teacher or mentor.
Many people are overly confident about this, so we need to evaluate our skills honestly. Then, even if you admit that you are not the best, will the "predecessors" you ask be willing to share their knowledge with you? Yes, even if your company is hiring talented people, but if these people are busy and don't miss you, what is the difference between this and working alone?
If the technology used is not sustainable, you will eventually be eliminated by the market
If you are still persistently expanding these outdated, proprietary, or very special technologies, you are digging your own grave. If any enterprise is still using an earlier version of a language or framework, it may be able to save you. However, you have to understand that it is much worse to stay in a stagnant technical environment for a long time than to constantly improve their tools at the same company.
If you have nothing to do
This may not be your fault. Because it may be that your company has been delaying the release, or it is always unable to deliver it in time. These problems come from the development process and management decisions, but are irrelevant to technical talents. If you review the minutes and seconds you spent in a company, you suddenly find that you have not made any meaningful achievements (the time is long enough ), so I advise you to think about the "Resignation" issue.
If your problem is low salary, there is no room for promotion
There must be at least a reason below the market price. For example, it may be the first reason to be able to work with some very good cool people, but learning valuable skills and experience is the only reason. If you do not make much money and do not have any positive plans for the future, it is recommended that you reconsider your choice.
If some good projects and promotion opportunities fail to reach you, your thoughts will never be taken into consideration.
This means that you are not important to the company. They think that you are competent for your job, but never regard you as a long-term capital that really deserves investment. If so, you can deliver your resume to a new company.
It would be similar if you were just in the company.
The "situation" here has many meanings. Traditionally, it refers to the financial situation (You have to pay for your salary). Here we give it a deeper meaning, such as technical capabilities and market competitiveness. If these aspects have not been improved after a period of time, I want to ask you, what are your reasons?
If your work does not change day after day-long and repetitive tasks only need to take care of trivial matters, it will gradually drop people's will and become degraded. The culprit is that you are always responsible for a negligible part of big projects and important products.
If you have no passion
Many software development fields are not as interesting as outsiders think. In this case, if you have the opportunity to challenge the technologies around you to make some real-sense innovations, it may help you to adjust this fight spirit. However, if you think that your current job is of no value and you are not inspired by it, you may wish to jump out of that circle and find something you are interested in.
When should programmers resign?