I'm a software dev with almost 10 years experience, and not a single day in the last 10 years has gone by without me feeling the pressure to work, learn something new, or build something. I feel like I should be programming all the time, and if I'm not, I'm wasting my time / missing out / not progressing.
It's driving me insane. It is sucking the joy out of life.
I need to learn how to truly disconnect from work, so that I can recharge. I need to learn how to drop this feeling, this heavy weight on my shoulders, that I'm not a good developer, and that I need to work more to get better.
The problem is that the reality of our field is such that:
a) There is a lot of opportunity b) There are a lot of really smart people, doing very cool things, capturing that opportunity. c) If you aren't learning, or getting better at the craft, then you're falling behind, becoming irrelevant, and certainly you aren't going to make anything of significance.
How do you return to the joy of the craft? How do you forget about the outcome, and learn to love programming again?
One thing that stands out to me is that you've made some pretty big and scary claims without a lot of evidence to back them up. Are you actually not a good developer? Are smart people really "capturing" the opportunity (ie there is less opportunity over time)? Do people who aren't working all the time fall behind and never make anything of significance?
If so, prove it! Figure out what evidence you would need to definitively answer these questions, and research or experiment until you have that evidence. Anxious thoughts are like dreams: they seem perfectly reasonable in your head, but when you try to bring them into the real world they fall apart.
As far as evidence goes, I'd point you in the direction of two of my favourite Richards. The one who did Clojure: https://www.youtube.com/watch?v=f84n5oFoZBc and the one who got a Nobel for Quantum Electrodynamics: https://www.asc.ohio-state.edu/kilcup.1/262/feynman.html
You're probably not going to do any of those by being a diligent model employee; it might be you don't really know what you want and are waiting for A Vision that will inspire you, and in the meantime your employer/clients occupy that place temporarily, in addition to providing you with a paycheck. Of course, waiting for the right wave to pick you up and sweep you into the future isn't really satisfying and so you're starting to feel burnout.
In short, it might be worth reviewing your idea of success and then looking at the things you've worked on so far and assessing which ones brought you closer or farther away from that. It could be your anxiety is rooted in uncertainty about where you're going and the feeling of futility that accompanies just swimming along with the current and never arriving anywhere in particular.
I fear the day when my reality sets in.. and I have no memories of anyone or anything I ever did because I was staring at a computer screen all day. I'm in the same boat: working for multiple companies as full-time to part-time to freelance to contract. I can't sleep because I don't feel productive. And the little sleep I get is enough that I'm okay to get up and get going again.
I do not even drink coffee. I try to swim at least an hour a day, and bike for at least a half hour to keep the muscles going and strong. Sitting at a desk all day and then coming home and sitting more... mentally and physically exhausting.
I am addicted to tech and the Internet and my addiction is fed by my skills to keep feeding my visions to life. Rick and Morty moment. Rick has no meaning as a scientist because he knows the truth about the universe and everything in it. Joker moment. When you're good at something, never do it for free. Do what you do best to live the life you want.
I don't know that cool new tech is the way value is created. Airbnb's first 'tech' was an Excel spreadsheet. Observe, on the one hand, the person recently open-sourcing the e-commerce platform they built after their startup folded, and on the other, the person recently asking what's changed in tech since 2017, only to hear "not that much":
Value comes from solving real problems that real people have. The good ideas aren't incubated in front of a screen, they start with people, and conversations, and a whimsical approach to what the future can be. So in a way, the best thing you could do for yourself is to make a concerted effort to spend time NOT developing.
Your A and B are true, but not your C. The FOMO is eating you up, but your belief in it doesn't make it real.
I don't know that it's really about forgetting the outcome...the outcome DOES matter, but not as it's measured in money made/feedback on PH or whatever external validation.
If you do one thing that solves a problem for you, even if it's you alone, there's a quiet joy in that. And the more attuned you are to thins kind of joy, the more attuned you become to where you and software connect, and all the other stuff falls by the wayside.
What would you build for a person you love? What are the people around you complaining about? What would you build for yourself to make your life better?
- Stop comparing yourself to other people,
- Shut yourself off from new tech and "Show HN" every now and then, to focus on what you want.
- Have a project which isn't too serious and doesn't stress you out financially or burn you out (a game, invention or experimental project is usually good for this)
- Lastly try other forms of work/exercise to help you switch-off. When you come back to your work you'll have a little more appreciation for the craft you've dedicated a decade too.
Remember that these points are easier said then done... I'm still struggling to remember the joy of programming...
Disagree. For starters, it might not be glamorous or high-paying, but we need a lot of people to fix and support the wonderful messes that those "really smart people" make. If you have a reasonably solid technical base, you can do that. You don't have to be studying every night for hours.
More broadly, keep it firmly in your mind that we'll all be dead rather soon. Everything and everyone you see in tech will be forgotten, also rather soon.
If you want to program for love, pick some small side project to putter on. But don't forget to stop and smell the non-tech roses.
But if we go deeper inside the cause of your anxiety - and you need to go that way - I guess your problem is in self-acceptance. Do you have a courage to be normal, can you accept and love yourself if you are mediocre, a regular person who will not known for anything significant? Who said that you should, must be a top performer? Can you imagine the exact achievement you need to get in order to stop worrying and say that you fulfilled your goal?
I understand your anxiety, and suggest to:
1. read about self-acceptance and ideally go through CBT with a good psychotherapist,
2. spend half an hour per day sitting and reflecting, meditating, slowing down yourself,
3. I do not want to recommend any book as they have different effect on different people, but maybe look at “The Courage to Be Disliked”,
4. different experiences and bigger picture: try hobbies, gym, again meditation, maybe some other ways to introspect and expand your conscious.
Good luck!
Seek therapy.
> If you aren't learning, or getting better at the craft, then you're falling behind, becoming irrelevant, and certainly you aren't going to make anything of significance.
This is such an unhealthy attitude. You seriously need to take a step back and reevaluate your priorities.
Also, this shit ain't easy. Life is the most difficult thing any of us will do.
Recently started looking for a new role and even though I have so many open source projects in my GitHub profile, I'm asked to do tech challenges. I spent 4 days in one, and at least a few hours for each other company I've applied to. There were two days last week I haven't slept.
Even though I put so much effort, dev teams seem to take the piss and take ages to provide feedback: someone is on holidays, there's a workshop, the job position opening was paused, etc. I find it immensely disrespectful towards the candidate. The company that I took 4 days to build their challenge only got back to me 8 days later, I got demotivated and won't accept their next stage interview. I've checked some of their Devs GitHub accounts and are empty and have no contributions.
One tech challenge was a cards game; I built something similar 6 years ago, vanilla JavaScript. Unfortunately, with having to build with trendy typescript, react it took way longer; I also do a lot of animations etc so takes more time of course, but still, is just a waste of time.
I think it'll just keep getting worse and there are way better and interesting things to do in life. I'd rather have used the time to help a charity for example.
This is also related with anxiety. After all, at the end of the month the landlord will knock the door and people like me have to pay rent. Time is worth way more then money, I know that. But there's no option regarding the tech tests etc and the time is wasted... and just gets worse if you apply to several positions.
The last challenge I wrote was for a bank. They said it'll take max 2 or 3 hours. But having to write all the tests, a reverse proxy because of CORS etc and typescript, plus the actual business logic, took 12 hours.
Regardless how much money they pay, I'll never get that time back and it's not that I own a house, a car and stuff like that.
Why can't Dev teams ask the candidate to go through an open source project they might have available publicly and explain what they did?
Well, I can only really think of two angles about this. Your belief system, and your actions.
Your belief system will influence what actions you take, or thoughts you have, in general. Then, you have the action/habit/thinking itself.
I'd say if you identified that you want to do this, you just have to do it. But, that requires introspection, self-monitoring, and time. When you catch yourself thinking about work during some time you've decided to relax, then stop. Repeat as necessary. A few weeks disconnected can help weaken the habit, if you make it a point to do that persistently for the whole two weeks. But, that all takes mental control and introspection, for which I'd recommend meditation. After that, you almost have to run your mind in debugging mode, continuously. Habits thrive on auto-pilot. You can only reprogram your auto-pilot by conscious attention. Which means paying attention to every thought, constantly.
You need to examine and fill out your belief system to support that. Like, you listed the problems of the reality of the field.. but, you didn't list some of the flip side, beliefs you can have there, like, "I can become more effective if I can disconnect". You'll want to make sure that you have a set of beliefs set up to support the change you want to make in your actions/patterns of thought.
I don't think there's a magic bullet. It's hard paying attention to your thoughts all of the time and eliminating auto-pilot from your life. Most people never do for any period of time, but most people have vices, destructive habits, personality defects, etc.
This is also a trait of ADHD (inattentive subtype), so you may find some of the techniques people use to handle it to be useful in your journey.
I suspect that point (c) in your list there is actually not reality. Does that make any difference? If you could realise that it's not true, would that help?
Anyway, I suspect your problems are nothing to do with the field, nothing to do with software engineering per se. See a professional; your field of work is not the problem and a professional will have seen this in people across a great many fields.
Can you elaborate? Ie. do you mean the opportunity to work on rare projects which do cool tech, such as ex. VR at Occulus/Valve etc.? Or do you mean just startups which get people rich?
It's just you're getting older and it's time for you to find better balance in your life. Relax, you will not fall behind since we're all getting older. It's an even field.
And it's even worse with athletes. In engineering you're supposed to hit your prime at about 35-40. That's when an average footballer career is over. We're kind of privileged in that regard.
Interviews will only get worse, on-the-job performance will be even more demanding than the year before, and we're going to be expected to work insane amount of hours since we're classified as exempt employees. We might even move fully towards a gig economy, where the standard will be contract based employment instead of full-time work. We can already see trends happening:
- politically, unions have lost a lot of bargaining power, having been eroded throughout the years through various ways
- workers in general (non-tech included) are being put under tremendous strain. We still have it somewhat good for now, but it's gonna catch up to tech very soon, if it hasn't already (ridiculous ip/non-compete contracts, non-paid overtime at night and weekends, agile micromanagement, stack ranking, etc).
- We can see our responsibilities increase as a techie, but not very much our pay relative to upper management (again, same for non-techies too): we went from separated roles of backend/frontend/devops/database engineer -> full stack engineer -> cloud/aws engineers. We now need to know 10x more and manage basically entire product pipelines individually as the starting point of an engineer.
- Discrimination gets a free pass in all industries, just see all the sexual harassment, ageism, 'cultural fit' based environment that has become standardized.
- Losing your job with no safety net means no income, no health insurance. Not good for your overall well-being to have this implicit threat hovering over you constantly.
- Free time is decreasing, and we feel it. Weekends are no longer about relaxing or exploring new places, it's catching up on more work like chores around the house. And because of this, we're pretty much stuck in our place of residence since there isn't much time to do anything else. And on those 3 day weekends, prices for everything (hotels, flights, etc) are insane and very busy, making your exploration time kinda negative and increasing your anxiety even more.
- Employees getting screwed out of startup valuations or stocks with financial trickery, or just outright theft (because it's costly for us to sue individually and class-actions are not very effective in dishing out punishments).
And so on... The real answer to the constant anxiety like you and many others (including me) experience is from the overall environment that we are all in; it's getting worse and the reality is we can't escape it. Our politicians don't really care for us, even our own techie brethren don't care (just see how divided we are on unions if a single construct of it is corrupt, despite the situation we are in now which is total power to the employer).
I feel like if we solved our environment, all our anxieties will be lifted, as a permanent solution. That, or just be really rich by having the right connections or just use all your free time and joy studying to become the best of all of us (latter not guaranteed if you don't have the right social skills to climb the latter). All we can do is wait for a martyr to initiate the process of improvement and we help back them up. But for now we can seek whatever tiny joys is in our lives and use it to drown out the truth of the environment we are in. We have to lie to ourselves.