Take that challenging job, get higher degree, start something of your own when you still have time and energy?
I am trying to make very important decision and need perspective from people who have been in the game many years more than me. Thanks!
You already know how to calculate how much your credit-card-augmented lifestyle is costing you, but you don't — why? Why on earth are you going to take out a loan on a new car next month when you could just buy a used Audi for cash?
Go smoke a joint, introspect on why you have that flaw in your character, and fix it.
Next: You will eventually decide to have kids. When you do, this life will be over. A new, different life will begin. Aside from whatever satisfaction you do or don't get out of the new aspects, one of the main differences will be the amount of your time and energy you can devote to pursuits like making software, writing novels, building a company, etc will be reduced by about 80%. So this is your window. Don't let your youth go to your head. You are in the first year of only 10 or 15 that you have left where what you do is totally up to you.
Finally: Stop smoking cigarettes immediately, you stupid little fuck.
As much as culture tells us pair bonding is the end all be all, it's not. Outside of college your chances of finding a compatible mate reduce by 10,000% or more. Instead of actively looking and compromising keep up high standards for yourself and any potential mate. Instead of taking dozens and dozens of dates spend that time socializing and spend that money investing. Spend time to learn what you should be investing and don't trust pundits except as a barometer as to what everyone else is doing.
For OP, if you really like this question it's been asked a lot. Check reddit and youtube.
I joke. It's really because as I age I will be able to afford the comforts and convenience I've grown quite fond of. I will be able to take care of myself and loved ones in emergencies and afford insurance.
But in the end it answers OP's question. And since my life is different from yours I gave a different answer. If you feel my answer is inappropriate feel free to engage me in conversation and learn more about the mistakes I've made, the things I cherish, and my ethnic/cultural back ground.
In all seriousness? You're not as clever as you think you are, so try being less of an asshole. Even when you are the smartest person in the room, no one cares, so quit being so insufferable. Spend more time with your musical instrument; you'll never go pro, but it will add enjoyment to your life and sometimes that of others, and when you're older you'll regret having not played more when your were younger.
- You breezed through university relatively unchallenged. Understand now that the only way you'll be able to compete in the market is to out-read, out-study, think more strategically, and work harder than your peers. You'll find this helpful when being tapped as a co-founder. A good place to start, read-up on the wisdom of Peter Drucker> http://academic.udayton.edu/lawrenceulrich/LeaderArticles/Dr...
- Understand that your success goal posts will look entirely different at 30-40-50. Much of the material possessions and career aspirations that seem important now, become junk & meaningless clutter later. Pivoting & reinvention are key to survival. Often you win by surviving.
- That emergency fund saved your neck when the business tanked. Still you wish you had much deeper reserves.
- Stop taking your health for granted. You'll be shocked by pro-athlete peers, whose careers are largely over by their early 30s, their bodies spent. Then one day you too get injured, badly. Start consciously taking care of your body now.
- Be less humble
- Start reading about steroids, the sooner the better
- Stop reading about design patterns when you don't even know what a Makefile is
- Don't drink too much functional programming kool aid
- Pay attention to software licenses
- Spend more time with your grandparents
- You don't matter -- that's good
- Quit distro hopping and try OpenBSD
- Give your wrist some love and stop using the mouse
- Don't buy that motorbike
- Try not to avoid what you're actually good at, you'll end up in IT anyway.
- Stop wasting money, it'll get you into trouble several times down the road.
- Stop wasting time.
- Work out more, it's easier to lose pounds in your twenties then it is now in your thirties.
You'll do just fine regardless.
Essentially, just keep trying for #1 biggest goal, if that fails, go for #2 biggest goal and so on. Essentially you always shoot for the stars, and you will maximize what you get out of life.
Don't compare yourself to anyone else.
Two marshmallows later rather than one now.
Hang onto those old friends. Even the ones who can be dicks, provided they're not always dicks.
Tell your family you love them because one day it won't be possible.
Learn to love and forgive yourself so you can love and forgive others. Practice loving kindness.
Stop smoking weed.
Introverts lose energy to others and gain energy from isolation, but isolation should be in small doses to avoid de-socialisation.
Get fit, stay fit. Lift weights. Learn martial arts.
Get outdoors. Go up mountains and jump into the ocean.
Ultimately, it's all okay :)
I think there was stuff in there about relationships, but that guy was an idiot.
If you have a baby now, your parents (or more likely Randy's parents) will help out and then when you are 30 you will have a 10 year old that can actually do something interesting instead of a 1 year old that you just lug around.
But first, and this is important, have Randy get tested for protein-S deficiency immediately.
You should lean toward jumping too quickly. Even if you make some small mistakes, be open-minded and willing to learn from them, and you'll be able to recover.
It takes many years of compounding a mistake before you're unable to recover. Career-wise, it probably can't happen until you're 45+ (due to age discrimination).
2. Whenever possible, take your career in a direction that allows you to be paid more for working fewer hours. This will pay off later in life when you have the money to travel or just want to see loved ones.
There are many ways to accomplish this. One of them is to ask for better-sounding titles, even if they don't come with more responsibility or pay. Another is to develop skills that are widely applicable, rather than highly specific. The worst thing you can do is to develop skills that are only applicable to your specific employer.
For example, I have a lawyer friend who worked on a lawsuit related to microprocessors. He did this for five years. When he wanted to move to a different firm, no one wanted to hire him because he only had experience with microprocessor litigation.
If you're starting out as a developer, try to work somewhere that uses modern, popular technology. Both of those are important: modern and popular. For example, a company that exclusively uses Haskell or Scala is probably not a great idea. You'd want to get experience at something like Python, C++, C#, Java, or JavaScript instead. (Note that the culture of companies that use Java extensively are often very poor, so make sure to read Glassdoor reviews or ask HN about the company).
3. Sleep. If you focus on doing one thing at a time, you'll be way more efficient than your peers, and you'll have time to sleep 8+ hours a night. Don't work at a company that expects you to sleep less than 6 hours a night and spend all your time at the office. They're living in the past and don't understand that overall output suffers when people don't get to rest.
4. Build and use your social network. Don't be afraid to ask friends, parents' friends, relatives, and strangers to help you. If you don't have many friends, go out of your way to make more.
My life is exponentially better because of only 2 friendships that I randomly made a few years ago. It's been literally like winning the lottery. But you have to meet a lot of people and make a lot of friends before you find those relationships.
5. Your career isn't and shouldn't be your life. If you can't have an interesting conversation with someone that doesn't mention your job, you're doing something wrong. Have hobbies and other interests.
In that same vein, ask yourself (or old people) what someone might regret toward the end of their lives. Absolutely no one will say "I wish I'd spent more time working". Virtually all of them will say "I wish I'd spent more time with my family/friends/pets/hobbies". If you don't believe me, go out and ask.
6. Leave your comfort zone whenever possible. The more you practice it, the better you'll get at it. Every amazing thing in life requires being vulnerable and leaving your comfort zone.
Some of your decisions are vitally important. That time you're going to get spring fever and go rock climbing without a rope? Yeah, that decision's going to matter. It's only by the grace of God that you're going to live through that one.
Most of your decisions aren't important. Some of your decisions are critical.
Wow, you and I are totally at odds on this one.
I'm not saying "don't learn Haskell/Scala" or "never work at a company that uses Haskell/Scala". I'm saying that early on, you want to have widely-used technology on your resume, and then you can start to find a niche.
If your first and only job is at a Haskell shop, it's going to be much harder to get a job at a place that uses something more mainstream.
Does that make sense? This reflects popularity only, not the quality of the technology.
For me having options is the most important thing in life, and it's what makes life exciting. Not being stuck to the same place for 20+ years until you finishing paying the mortgage.
* Self-knowledge is the most powerful tool there is: What suits you, what doesn't; your strengths and weaknesses; your talents and blindspots; your limits; what you need, can tolerate and can't; what you love and hate; what makes you feel safe and strong and helps you thrive, and what leaves you traumatized. If you think you already know yourself, you almost certainly don't. You never fully know but you want to learn as much as you can (and in the process you'll learn to understand other people). It's the basis of every important decision you must make: Do I choose this career? Do I trust myself to take on the responsibility of this business, with all these people's fortunes and careers depending on me? Can I commit to love and care for this person for life? Is she/he right for me? Am I ready to put an infant human's life and development in my hands (and can I handle the work/life balance and pressure)? Many people make poor decisions about these issues - How can they make good ones if they don't know the key factor, themselves?
* The only way to develop that knowledge is to try and fail, and then to get up and try again (an essential skill in itself). You can't learn these things by just thinking about them; they aren't in a book. And now is your chance. Later when you have a career, a mortgage, business partners, employees and children depending on you, you can't take a big risk to just suit yourself. Also, I'm not just talking your career, but all aspects of your life: Relationships (especially relationships!), where you live, your lifestyle, etc. People playing it safe will question and criticize you (see below), but just smile and know you are moving ahead while in ten years they'll unfortunately realize they have learned little of life and themselves.
* Learn to ignore everyone's advice and criticism and to trust your own instinct and thoughts. Nobody else really understands you or your situation nearly well enough. They might have good ideas to consider, but you know best (which requires that self-knowledge). No matter what you do, people will criticize you. Even Steve Jobs was fired, Bill Gates reviled, and Martin Luther King was hated by many and polls show he was unpopular during the civil rights struggle; you could be President of the United States and people daily will call you an abject failure. And you will fail constantly, sometimes horribly, just like the rest of us, and while you are failing there will be no promise of success. Given that you will face criticism, questions, and failure no matter what, and that there is no promise of a good outcome anyway, at least do what you love and think is best, and enjoy the ride.
* Gather some data: Look at people at the other end of life, or ask them: What turned out to be important? My guess is most will answer, their family and personal relationships. Few people wish they had spent more time at work; many wish they had spent more with family. Finally, a good marriage is perhaps the most valuable thing in life but it takes far more than love and good will; it takes dedication, hard work, skill, and, as much as anything, self-knowledge.
I hope some of that is helpful!
EDIT: A minor edit or two
1.) Take the challenging job - YES. Of course, this is somewhat vague advice. If I had it to do over again, I would have taken the job at Google (now Facebook, AirBnb, Uber, Dropbox...) rather than joining the small startup right off the bat. The startup world is full of charlatans, and working at a more established company initially will give you credibility, engineering skills, a network and savings that can help you navigate sharky waters. I would have done the startup 2-3 years later. Instead, I did the opposite, which worked out fine, but meant that I had to learn a lot of lessons the hard way.
2.) Get a higher degree - MAYBE. I got the higher degree (MS) at a top school. But, I already had the undergrad degree which would have gotten me in the door at any of the aforementioned companies. I enjoyed grad school, and it gave me an opportunity to explore lots of fun subjects that I missed in undergrad due to requirements. However, it delayed me from learning hard lessons in the real world that probably would have benefited me more. From a financial standpoint, I don't think an MSCS is worth it, even if its free, because you'll come out ahead with more years of real-world experience and an additional year(s) of salary as a software engineer.
3.) Start something of your own - YES. Do it. But do it when you have a solid group of friends that are willing to take the plunge with you and an idea that you are confident in (have vetted through customer development or some other means). I did it when I was 24 or so, first as a contractor and then launching several products. Working as a contractor allowed me the freedom to travel through South America, which was literally the best experience of my life. My attempts to start a company were not as successful... I got scared by my dwindling bank account, was unsure of whether the idea would work and hastily got a job. BUT, my cofounder stuck with it, found another cofounder and is now running a multi-million dollar company. Thus, my advice to do it, but when you're good and ready, committed, and have friends that are 100% bought in.
As for other advice, I think the biggest thing I learned in my 20's is that sometimes you've gotta stick it out through the tough times. Without going into too much detail, I passed on several opportunities that would have dramatically changed my life, largely because of my own stubbornness, arrogance, and view that I was too good to be stuck doing work that I felt was beneath me. I'd echo the comment about "pick one thing and get really good at it," but I would disagree that you need to "do it for the love of doing it." Sometimes you're not going to love it. My friends/acquaintances that took calculated risks, and kept going where others wouldn't were the ones who ended up on the cover of Forbes (literally).