10 ms·
I have a soul-crushing job and I don't know what to do
I love programming and I enjoy solving good problems. Even though I am aware that there is some level of grunt work associated with each job but this one is just killing me.
Most of my job deals with adding CRUD functionality and bug fixes here and there. People don't seem to be tiny bit interested in doing things better. Our front-end developer chooses to re-implement everything from modals, alert boxes, to validation in form of horrendously ugly code because he believes his code will be more understandable to 'him'. The pay is not great and there nothing exciting associated with this job. In fact, out of 8 hours, I barely write code for 2 hours.
I only took this job in order to buy some time and create some interesting things but this job barely leaves me any time to do so. When I started looking for job, I didn't get good response from HN hiring / freelancing threads (maybe because I don't have a good portfolio).
I feel I should know modern frameworks like Rails and Angular to have a better appeal but it would take months before I get proficient in them and I have never been good at learning new frameworks for just the purpose of learning. I have no idea what I should do?
- a3n 12y ago"I feel I should know modern frameworks like Rails and Angular to have a better appeal but it would take months before I get proficient in them" The best time to plant a tree is 20 years ago. The second best time is today.
- pessimizer 12y agoAgreed. There's no way to get out of this, and learning new things is going to have to become part of your routine. Rails and Angular probably won't even exist in 10 years, so you're going to have to know the next thing by then.
- DLarsen 12y agoIf you want to get your feet wet with some real work, I highly recommend joining the folks at assemblymade.com. They have a really neat platform for collaboration that will allow you to make real contributions to a commercial project. One of their most active projects, Helpful, is a Rails app and would be a great companion project to the typical self-taught track of learning.
- MalcolmDiggs 12y agoWell put. Things you do today will set yourself up for mobility later. Consider continuing-education part of your job. For me, at least 25% of my time is spent on education every week. There's no end-goal, you just have to stay up on the technology to compete in the workforce.
- fuzzywalrus 12y agoI had string of crappy jobs to get finally a good one. I worked at a dead end e-commerce company that's now defunct that provided its own in-house platform to sell to customers for e-commerce sites. It was miserable, everyone could see the company was on life-support, including the owners. The practices we used like editing code on live sites/servers was insanity. I forced myself to start using Git, making me the only one using version control and sneaking in best practices to hone in skills. I took what I could from the job to benefit me (taking on a project to make a mobile version of the platform). I hated the job as the work environment was toxic and it was affecting me outside of work. Even to this day, I have the occasional bad dream of being forced to go back to work for that company but having some sort of exit plan, even vague as mine helped enormously. Picking a project and assigning it a tech stack is the best way I've found. Simply doing tutorials for the sake of tutorials takes superhuman dedication. My motivation grew also in parallel with the work conditions spiraling downward. Long story short, I scored a job oodles better than the horrid job and make significantly more, and have happy coworkers and bosses that care. Plus, I've picked up a lot of skills here which I'd never been able to at my crappy job.
- tryanother 12y agoi could have written this. our "designer"/self-professed "front end guru" does everything wrong. everything. i've had to teach her what javascript callbacks, closures, constructor functions, and hoisting are. she's rolling her own "front end framework" (table-based layouts with a few breakpoints thrown in) and separates the code into dozens (dozens) of different CSS and JS files. i'm also getting paid shit wages. but i basically spend 90% of my non-work, non-sleeping time learning and creating things so i can have a portfolio. i don't have a CS degree, so i am taking OCW courses and MOOCs to fill in my knowledge gaps. i'm going to start building an app for a friend soon so i can put something on my github. i cannot rely on my "real" work to provide me with a meaningful portfolio. i recommend you do the same.
- LandoCalrissian 12y agoIt's maddening to hear stories like this. I'm a UI/UX Developer, and really I just end up doing most of the front end development for our team. One of the big things I focus on is making sure our conventions are clear and documented. Style guides are verbose and have code examples. Part of being a good at frontend is bringing the biggest lift to the team overall and making their jobs as easy as possible. So many people will be touching your code at some point, so I go out of my way to make their interactions as painless as possible. I think with frontend development in particular, it's really easy to get some people that are really unqualified. Hopefully this is changing, but I feel like a decent amount of people sell some serious snake oil because some of it bleeds into soft skills.
- fuzzywalrus 12y agoAgreed, at least with the advent of precompilers and task managers like Grunt and Gulp we're starting to see a division from the previous generation of "web designers" where there's some hard skills that you simply do or don't have that can't be faked easily using bad WYSIWYG editors or rudimentary grasp of HTML and CSS.
- tryanother 12y agoi could talk your ear off about the corp culture that led to this situation, but i'll spare us both! we have no style guide. the code is not modular - everything is global. when i asked if i could at least encapsulate my own feature so that it wouldn't interfere with others' code, i was told no. i think a lot of people in hiring positions (esp at legacy corporations) just don't understand what they should be looking for with a UI/UX person. you can't just wait for the first interviewee who uses a word you haven't heard yet and hire them. it's both a science and an art. hire accordingly.
- 7Figures2Commas 12y ago> I only took this job in order to buy some time and create some interesting things but this job barely leaves me any time to do so. If your interest is in creating "interesting things," you should focus on the ways you can scratch this itch. If you go into your next job looking to "buy some time" you probably won't be any happier than you are now. > I feel I should know modern frameworks like Rails and Angular to have a better appeal... Software development is software development. A lot of jobs, even at prominent/"hot" companies, primarily involve CRUD applications and mundane development tasks ("grunt work"). Proficiency in Rails or Angular might help you land a new job, but it's worth contemplating the very real possibility that the nature of the work at these companies won't be any more engaging to you just because your employer uses a framework du jour.
- moooffooom 12y agoWow ... this comment is so true especially in Germany. Most of our Software Development jobs here in Germany deals with business application at is very boring and contains mostly mundane tasks. I have worked for some companies already and i really got to think the work is mostly the same boring shit! At my current job we have a load of "slaves" from companies like Accenture, CSC and the like... they also report the same shits from a lot of other places :( I really lost all hope ........
- otoburb 12y agoYour sentence "[...] out of 8 hours, I barely write code for 2 hours" contrasts with the next sentence: "[...] but this job barely leaves me any time to do so." I am probably misinterpreting, but if you wanted to buy some time I would have thought this meant accepting this job to pay the bills, and then outside of work hours picking up other skills to create some interesting things, which sounds like the right way to build up your portfolio and skillset, especially if you've put in your required 8hrs/day in the day job. I understand there are family commitments or other activities that may take up time, but in light of your implied situation (i.e. having to accept a less-motivating job to pay bills and buy time), you may want to consider either pushing for a new framework at work (which sounds like an uphill battle), or looking for another job.
- shubhamjain 12y agoThe main problem is exhaustion. The queer thing about jobs out here is that in name "flexible timings" there is complete lack of schedule. Everyone comes around 11AM and stay till 7-7:30. I reach home by 8 and I am completely spent. Weekends are better but I don't feel I am progressing enough to have a good job.
- allegory 12y agoBeen there. Shift your hours back to 9-5. Helps considerably. You don't lose the evening then. Gives you something to live for.
- ScottHConner 12y agoMoar this than I can upvote. Getting in early changes your entire day. Sure, you sleep less, but unless you have an acute medical condition you can get used to it within a week or so.
- klibertp 12y agoYeah, but make sure you do sleep enough. I neglected sleep for years, sleeping for 2-4 hours a day - on average, with sometimes 2-3 days without sleep at all - and I though I was doing fine. When it finally caught up to me I had a major epilepsy episode at the office, which was not nice. I since started to value a solid 8-9 hours sleep much more than before. This "much" of sleep is probably not really needed, but right now I'd rather be safe than (even more) sorry. YMMV ofc, but just keep in mind the dangers when deciding to sleep less to do something else.
- ffpsx 12y agoYou are not alone. I am in a similar situation. Best advice for learning new platforms is to come up with something you want to build and then learn the new framework by implementing the idea using the desired framework. My plan to get out of my rut is to build my own self-sustaining startup that I am more passionate about.
- blisterpeanuts 12y agoMaybe find an open source project that piques your interest, dig into the source code and start helping them fix bugs and add enhancements. If you work 8 hours a day, you have about 20 hours a week of free time, so go for it. Log onto github.com and click the "explore" link at the top, to get some ideas. Beyond that, realize that most people don't have ideal jobs. It can take years of hard work to get to the point where you can pick your job, or even better, make your own job. Everyone's had soul crushing jobs before; just grit your teeth and get through this, whilst looking around constantly for the next opportunity. As a friend once said, opportunities don't usually knock on your door. They lie there quietly, waiting for you to go out and find them. Best of luck!
- forca 12y agoI feel for you, I really do. I've also had a string of "crap" jobs where I felt I was not doing anything of value. Remember, you should always be looking. If you have time, do some small bit of pro-bono work for someone, perhaps a non-profit. Add them to your CV. Solve an interesing problem for them. Look at companies you admire in your area, see what interests you, and come up with a way to solve a problem they are working on. Present this to a manager over lunch. Tell them you fancy working for them and you can bring some skills to the table. Like Yoda said, there is no try, there is do or do not. FYI, I switched over to working for non-profits, and while the money isn't as much, the jobs are more interesting to me and I have generally much more latitude to implement what I think will work (for me, always OSS/Libre). It's a good feeling to know you are making a difference.
- logfromblammo 12y agoIf your job is a soul-crushing vise, take your soul out of it and put it somewhere else. There are a lot of people out there that do something they hate to pay the bills. They get their enjoyment out of life by doing something else after clocking out. People at your work have no interest in doing things better because they already emotionally divested themselves from the job. Just pretend that instead of writing awful code, you're just serving customers at the restaurant until your agent calls about an audition. Reserve your passion, creativity, and imagination for the people who care, even if that's just you. Don't learn anything based on what you think other people might want to know. Learn what you need to know to do what you love. If you can't somehow telegraph to a prospective employer that you can invest your passion into something, it won't matter what you know. Bitter, jaded, burnt-out people don't get nice jobs.
- shubhamjain 12y agoYou are misunderstanding my situation. The reason why people aren't interested in clever solutions is because they can't think of any. It may seem cynical but I have seen people out here working even longer than me re-creating something, not exploiting even basic tricks or automations. Lately, my co-worker spent 15 minutes indenting JS files without realizing that it would 10s to use a code beautifier.
- tcfunk 12y agoI do this occasionally if I'm updating an old project or something as a means of making sure I walk through the code and understand what it's doing. Might be silly, I guess, but it helps me.
- eccp 12y agoThere are two things that pop to mind: You can motivate or coerce your team mates to improve their skills so they all benefit. You can even ask your team leader/boss to be the lead of an initiative at your place to use better tools or technologies so that the productivity will increase. If you get an OK you'll even have an opportunity to spend some paid time doing something which will keep you sharp and improve your daily experience. If you think you can't get the above to work or that you're way beyond the skills of your team, look for another job with better conditions.
- cognivore 12y agoOur first world problems are such a drag. I think you can make most any coding job fun if you do it right. Are you interested in making things better? Adding CRUD? Bake in a better object layer to the data store. Front end developer a n00b? Just out do him with some nice Angular or jQuery on the next project. "Oh, I already added the UI stuff." If you can't learn something just for the purpose of learning (and why are you putting that limitation on yourself - buck up) do it on your own time and then bring it to work. Make everyone else look bad. Make your employer happy. Then get good at the new shiznit so you can quit and get a better job.
- mediascreen 12y agoI find that making everyone else look good is an even better way to improve your career. Colleagues will remember every time you helped them out and your bosses are usually more aware than you think.
- hipsterrific 12y agoYou make it sound so easy when it's clearly not. I've worked jobs where I was the only .net developer in a large enterprise and worked in a team where my teammate wasn't interested in growing. It takes more than just gumsion to do what you're suggesting, what you're actually wanting to do is add more stress. Case in point, my coworker who wasn't interested in growing: I spent the better part of two months architecting out the service layers...only to have him f* it all up in a week. Refactor you say? Try refactoring code for someone elses work on top of your own. He can try to outdo his coworkers to which he may easily become unpopular at work. Nothing adds more stress than pissing off coworkers and added more horridness to an already horrid team dynamics. It's not easy to work in a crappy job. Your suggestions, in my opinion, sound more like wishful thinking.
- patio11 12y agoSome times I think we are wired to believe we have to beg people's forgiveness for not being miserable. Medium term I'd suggest discarding this belief. Short term: on behalf of geeks everywhere, your local online watering hole hereby grants you permission to not be miserable. Quit. There exist much better jobs out there. The hiring market for people with your skillset is the best it has ever been. Level up. Portfolios are not, in fact, how most people get consulting gigs or jobs. This is believe due to availability bias by junior employees/consultants because portfolios are tangible and they have some sort of just world theory where the best gigs/jobs go to the people on the top of the ladder in programming skill. There is no one skill ladder. To the extent that there is, skill is not the primary driver of employment decisions. P.S. The overwhelming majority of jobs are not in modern frameworks. Get good at Rails/AngulAr if they interest you or if you want to work in fields where they're the frameworks of choice. (Rails might be for Valley startups one of a few top contenders. I am insufficiently well acquainted with Angular to understand whether it is. Either way, neither will account for a full percentage point of LOC written in 2014.) Also, if you haven't done so, I'd sit down and figure "What do I want to get out of my career?" and start optimizing for jobs which get you closer to those goals. This sounds obvious but some people don't do it. Do it. "A job which keeps a roof over my head and doesn't tax me mentally" is a perfectly valid answer but you don't seem to want that so don't continue to seek it out when you get up every morning.
- juliangoldsmith 12y agoIf a portfolio doesn't matter that much, how would you recommend a young programmer, without many connections, get a new job?
- emcp 12y agoI would recommend to make many connections! Meetup.com might be a start, find fellow programmers there. Go to your local co-work location. Try the freelance sites like e-lance , etc... But whatever you do, don't let lack of portfolio stop you.
- elsewhen 12y agoDon't you think he should look for a job while he keeps his current job?
- ChikkaChiChi 12y agoI got addicted to solving problems. Every time I fixed one, I would get that little dopamine hit that told me I was doing a good job. Then one day a buddy said, 'Yeah, but in your company there are problems that shouldn't need to be fixed.' Completely changed my way of thinking and set me on the path to start looking for a new job.
- FrankenPC 12y agoSame sort of situation here at my job. Myself and a group of three other developers began meeting weekly after work to go over coding technology and to challenge each other. We will bring ourselves up to speed with or without the help of our company. And that's the attitude you need to adopt. The relevance of your knowledge base is your responsibility. Fight for it. Defend it.
- padobson 12y agoApart from learning, try these: 1. Put yourself in situations where you can meet more tech people Most (not some, most) of the work I've gotten came from a chance conversation with someone who was working at a place that needed the skills I have. So try to have more of those conversations. I live in suburban Ohio in the heart of the rust belt, so this can be done anywhere. 2. Try consulting instead of full time work. A lot of businesses have problems, but can't afford a full-time coder. It also sounds like you don't want to be working full-time anyhow. Try doubling your rate and finding 2 clients who each buy 10 of your hours a week. This is much easier to do if you do number 1. Even better, charge a daily or weekly rate so you don't have to keep track of your hours. This also allows you to pay your taxes on April 15th every year, instead of having it deducted from your check, giving you more cash flow options and more runway. 3. Work Remotely When you do 2, you can negotiate 3 pretty easily. A business that just needs you to fix javascript bugs on their website 1 day a week probably doesn't want to dedicate the infrastructure to have you in their office. This will save you even more time, energy, and stress by eliminating your commute. 4. Structure your time better Set constraints on yourself for doing what you need to do, when you need to do it. If you're coding 2 hours a day, then set aside 3 hours of your day where you don't do anything but code. No email. No web surfing (other than what you need to code). No phone. If you have meetings, schedule them consecutively. Let your brain be in meeting mode for 3 hours, then go grab some lunch, then come back to the office and put your brain in code mode for 3 hours. This way, you can even have time to multi-task (answer emails, talk about local sports team, read HN) at the beginning and end of the day. This takes some discipline, but you'll get more done if you have full chunks of time dedicated to one thing. 5. Say "No" more You can't do 4 without doing 5. Don't be rude, just explain that you're busy with something else and that you can discuss at the next meeting you have scheduled. Put headphones on while you're coding and gently set boundaries with your co-workers that you're not available for chit-chat when your headphones are on. I've found that music without lyrics is best for coding. I have a John Williams station on Pandora that I use all the time, here, have a listen: http://www.pandora.com/?sc=sh216294333998280127&shareImp=true http://www.pandora.com/?sc=sh216294333998280127&shareImp=tru.... Finally, don't give up hope. In my experience, it's easier to find a good job once you know what you don't want. It sounds like you have a good idea about that, so make sure to ask questions at your interviews, sales calls to make sure they aren't making the same mistakes. Good luck!
- w1zeman1p 12y agoI found myself in a very similar situation to you. I was working at a job that I didn't really like and knew that learning Rails was something that, on my own, would take many months to get proficient at before getting good enough to get a job. The way I broke out of my slump was to attend App Academy. I used the opportunity to really dive deep into Rails, and javascript, but also to meet a bunch of really great new people in a new place. (I had some previous web dev experience but no Rails and very little javascript and it was still absurdly useful :))
- aurelius 12y agoI was in a similar situation once. Here's the algorithm I came up with to get myself out: 1. Figure out what you want to do. This is the most important step. You currently have a job, so you have time to really think about this and figure out a solid answer. The answer doesn't have to be an emotional epiphany where you find your so-called "passion", but it has to be a concrete goal. For me, it was more of a recovery of the idea that I wanted to apply my programming and computer science skills to interesting and difficult real-world problems. With that in mind, I looked at the place I was currently working at, and saw that I wasn't going to be able to achieve my goal there. So, I looked around and found another opportunity that was more along the lines of what I wanted to work on. 2. Figure out what skills you need to pursue your goal. So, when I found the new job that I wanted, I interviewed for it, and got rejected. I asked for feedback, and I was told that my data structures and algorithms knowledge wasn't good enough. I suppose if I had followed my own advice, I'd have realized this before I applied. After stagnating at my old job, and foolishly taking a team lead position, my skills had certainly atrophied. However, the interview failure was exactly the kind of real feedback/wake up call that I needed. 3. Work on improving your skills so that you are ready to actively pursue your goal. After failing the interview, and getting some feedback, I set to work rebuilding my data structures and algorithms knowledge. I bought a copy of Cormen, et al., and brought it everywhere. At work, I would go off and hide somewhere for an hour a day, and study some part of the textbook. At home, I worked on a core data structures and algorithms library in C. I'd get up an hour before work, and write unit tests or fix bugs. I'd use the evening to hack on new code for the library. I was pretty exhausted after work, and I had three kids, one of whom was only a few months old, but I pushed myself ahead because I had a goal, and I didn't want to be stuck in my current job any more. 4. Don't give up in the face of failure. Keep the dream alive. After 5 months of study, and writing the data structures and algorithms library, I decided it was time to apply again for the new job I really wanted. I explained in a cover letter what I had done since the first interview rejection to address the feedback I'd received, why I really wanted to work at the company, and how I thought it lined up with my career goals. Within a week, I had heard back from the company, and scheduled another interview with them. Three weeks later, it was my first day on the job! It was terrifying to apply for a second time. I had no backup plan. My current job at the time was starting to suck more, and I wasn't enjoying being a team lead, so something was going to have to change, one way or another. My life at home was exhausting, too, with the new baby and two other kids knocking around. But my wife was on board with my whole plan, and tried to give me the time to do the work I needed. It helped that we had friends and family who were struggling to find jobs - there's nothing like seeing other people hurting to give you a realistic perspective on your own life, what you have, and where your life should be going. On the other side of all this, I've made it my mission to be continuously studying, cramming it in wherever and whenever I can. I never want to be back in that hole of skills atrophy. Also, at the start of every year, I make an assessment of where I'm at goal-wise, and I make a study plan for the year, including a substantial project to work on in my spare time that will help me get to where I think I need to be. Resist the urge to hop from one thing to the next. Focus on something, and master it before moving on to something else. Good luck!
- agentultra 12y agoI'm the worst for not taking my own advice but I've often heard it delivered to me in one form or another when I've been in these similar situations... so here it goes: What do you like to do? Do more of that. Easier said than done, I know. It comes off as an awfully curt way of suggesting that you throw out your entire life and reorganize it in a way that you can toy with your passions in pure bliss every waking moment. For those of us with families, mortgages, and responsibilities outside of work such advice seems useless. But it's not entirely useless. You just have to do more of that thing which excites you. It won't replace the drudgery of your current job (or any possible job you can get thereafter). But if you aim to spend a few hours a week on it for the sake of being happy and doing interesting things you might find an opportunity to make it your thing. Share your passion with others. Show them what you're up to. Aim to make a little progress each week. Keep it small. Finish one thing at a time. Don't leave dangling threads. Yadda yadda. The flip side of asking yourself this question is that you have to be honest in order to make progress. You may not actually like programming. Or perhaps what you do like programming is so niche that there isn't an industry for it (notice how few postings there are for BF programmers?). It's okay to enjoy programming as a hobby. Maybe you're actually a carpenter in a world obsessed with gizmos and you'd be better off spending the majority of your days planing and staining wood. Fiddle with computers and neat programs at night. That sort of thing. You're not living in a Kafka-esque dystopia. There are ways to get out of your rut. You just have to shift your perspective and be willing to do something about it.
- erichcervantez 12y agoWhen I need to learn something I first brain-storm a small project to work on. Doesn't have to be great or solve any world problems. Maybe it's just something for you. But in that project, be determined to use whatever framework you've set out to learn. For me, I also have a coding blog (eonjava.com) where I will write an article on whatever I am working on. I have several articles right now that I am working on at once. I try to write them as if I am speaking to someone who has no previous knowledge of the topic so this forces me to learn it from the ground up. It might be worthwhile to start a blog and take this same tactic.
- leff_f 12y agoshubhamjain, I'm sure you are a good developer and will be able to turn this around. :)
- robbyking 12y agoI was in the same situation for more than four years. The only reason I stayed for so long was at the time my career wasn't very important to me -- my main focus was my band, and even though it was infuriating, my horrible job afforded me the time and money to be able to focus on music. When the time came for me to think about moving on, I did a few different things. First off, I went to udemy.com and brushed up on my framework skills. At the time I was a front end developer, so I too courses in jQuery and Angular.js, then took a refresher course in Java. From there I started doing volunteer development work for local non-profits so I could round out my portfolio. After that, my job hunt was pretty easy. All-in-all my ramp up took about 6 months or so, and it lead to me getting a job that I love.
- deleted 12y ago[deleted]
- klunger 12y agoNot to sound harsh, but you seem to have an unrealistic expectation about how rewarding a given job should be. The _vast_ majority of working folk do it for the pay check, then clock out at the end of the day and proceed to the part of their lives where their heart resides. Think about all the folks who works in retail, or food services, or manufacturing, not to mention agricultural workers, dish washers, maids etc. The notion that your career should reflect your passion is classist nonsense peddled by career counselors in upper middle class high schools and psychologically seductive but ill-conceived internet memes. You have a job that probably pays higher than the median national salary and doesn't expose you harsh physical conditions or toxic chemicals on a regular basis. Have some perspective and be grateful for what you have. That being said: If you want a job that it is personally fulfilling to you on a reliable basis, then you need to take some risks. I would recommend either 1) starting your own company (it is your baby so you will care) or 2) freelance consulting (so you can pick your work).
- kotakota 12y agoSome of the points you're making dont seem to make sense. For instance you say you dont have time to make interesting things but then say you only program 2hrs out of the day. What are you doing those other 6hrs? And what about side projects outside of work? Another key point that lead to crud work is a lack of experience. If your fresh out of school most job offers you'll get will be fairly crud type work until you've shown your able to handle more. Education can also play a role in this. If you have a bachelor's or no degree experience will be your best friend. If you have a master's or phd you can generally get into some more exciting positions out of the gate. Where else are you looking for work besides hn hiring / freelance threads? Those aren't even close to the best resources for finding great jobs.
- fivedogit 12y ago> "I have never been good at learning new frameworks for just the purpose of learning" Could not agree more with this statement. When I get into a software project really deeply, my work ethic is insane. Obsessive. As I need new technologies, I learn and assimilate them quickly because I'm so motivated to get to the end point. There's never been a tech I've given up on when plowing through a project -- well, maybe OpenCV. Anyway, I've tried, as the OP has, to teach myself Rails or Django or whatever on the side as a "resume builder" and have lost interest each time. I just don't care enough to learn the not-totally-necessary tech to a degree that would actually do me any good in a job interview if I'm not doing it as part of a passion project where it is required. From the other angle, when I get an idea and want to build it really fast, I don't have the patience to force myself to learn a new language or tech when, fuck it, I can just do it in Java or whatever. Catch 22.
- maerF0x0 12y agoI think thats where side projects have to be something you care about. Scratch an itch whilst learning pet technology. Ex: a friend of mine wanted to modify some data on his garmin GPS thing. He also wanted to learn Go and google app engine. A few weeks later he had resume items and the goal accomplished.
- baxterross 12y agoquit.
- duckingtest 12y agoDo you have any savings? Are you married or otherwise unable to move? There are many countries in the world where you can live comfortably for $1000/month (or even less). That will give you a few years of time to do anything, web apps or something. Maybe one will turn out to be profitable. Or you could just try to do part-time remote work to cover living expenses.
- maerF0x0 12y agoWhich are said sub $1000 countries and link to proof would be nice.
- duckingtest 12y agoAlmost half of Europe [1]. Average wage is better than vast majority of people in these countries earn. That's proof enough. You can optimize for smallest price levels [2], safety [3] or local English level [4]. Other than that, basically most places in the world. I heard Bali is nice. [1] http://en.wikipedia.org/wiki/List_of_European_countries_by_average_wage http://en.wikipedia.org/wiki/List_of_European_countries_by_a... [2] http://epp.eurostat.ec.europa.eu/tgm/graph.do?tab=graph&plugin=1&pcode=tec00120&language=en&toolbox=sort http://epp.eurostat.ec.europa.eu/tgm/graph.do?tab=graph&plug... [3] http://www.oecdbetterlifeindex.org/topics/safety/ http://www.oecdbetterlifeindex.org/topics/safety/ [4] http://languageknowledge.eu/languages/english http://languageknowledge.eu/languages/english
- maerF0x0 12y agoMy advice is to make it interesting. If you're supposed to do _yet_another_GD_CRUD_page, then figure a way to do CRUD +1 . Eg: add autosave per field, take a long form and turn it to a multipage w/ final submit, figure a way to validate in the browser before sending to the server, internationalize it (what does $1,000 and $1.000 mean?) etc etc. I did this, plus basically ignoring my manager (whom only cared about the bare minimums and timelines, for his bonus) to level up my skills and move onto better pastures.
- kamaal 12y ago(This might get buried deep in the thread, but if you find it, read it) I am assuming you are from India. I'm from Bangalore. I was in a very similar condition like yours. I definitely can understand if you are staying in a city like Bangalore/Major-Indian-Metro, and have to travel and endure long traffic jams. And one more thing you should know about stuff like "flexible timings" is under the absence of discipline and good enough managers these policies will ultimately drive you to a disaster. There fore first get yourself a time table. As much as the teenagers may shout at this calling 'mediocrity' or whatever. Getting disciplined helps more than you can imagine. To start with you should begin traveling in low-traffic hours. Start early from home, reach office early. I tend to follow GTD, if you like you can follow that too. Finish all important tasks by lunch. By the looks of what you say, you should be done with all your work by the time others are in office and settle down. There fore your afternoon will be spent in meetings, after your productive hours are exhausted. Leave office at exactly 5. On the long term, keep a notebook. You should have a clear list[Not ambiguous/vague tasks] a goal with a clear end state. Plan your work and prioritize it, in the importance of what's best for you and the project. Refuse to sweat the small stuff. Meticulous pick only the most important parts of the project. If there just isn't any important work out there, talk to your manager and see if there are other projects around you and get transferred there. If there are absolutely no good projects in the company, please look for a new job. Please don't waste time sweating the small stuff. You are in your 20's and this is the kind of time you should be working on tough problems and building all the experience you would need later. You can do all this by having 1-1 meeting with your manager every 15 days. Write down what he expects from you, what you have achieved in the past 15 days from the goals set in previous 1-1 and if he is acknowledgement of all that. Plan stuff and track all this in the notebook. Including your long term goals. Like learning a new framework, or buying a new car. Review how you are progressing every Saturday night, and take corrective steps necessary. And most important. Never forget to assign 'Next steps' to every task you complete. Because that's how new opportunities pop up. Post 5 PM in the evening you should get decent time for your personal projects. Lastly keeping a notebook has a its own advantages. You can see the timeline of what you've been planning, what you've been achieving, and what corrective actions you would like to take or have been taking. It will also give a complete record of everything you've done. Might just come in handy during a appraisal or a review session someday. Humans are pretty bad at visualizing big timelines and structures, and remembering stuff. Without a record you will be lost, as time passes you won't know where you are. How much time you've lost. Heck you won't even what you did a week back and how you spent your time. This is why most of us feel much time has passed without we achieving any thing substantial. Because we don't have a record what we originally wanted, what steps we took, and what corrective actions and next steps we took. So at the end it just feels like time is flying while we aren't achieving much in the meanwhile.
- halfcat 12y agoSounds like you are in an average, ordinary job, where they pay less and expect more. A lot of these places are revolving doors, working people to the bone until they quit. Then they bring in the next sucker. Good jobs are out there, but you have to be good and you have to sell yourself. So, two things: 1. Become exceptional at what you do. This is the idea that "follow your passion" is bad advice. Instead, become exceptional at your craft, and you will automatically enjoy what you do, and you will have access to better and better opportunities. Typically you end up doing more of what you enjoy, making more money, and working less than you did at the sucker-farm job. On this point, I'll say that every single time I made progress toward becoming exceptional, I did not set out to "learn Rails" or whatever. I set out to do something fun or interesting or hard, and in the course of hammering out 1000 details to make it happen, I learned a ton. Equally important is being around other people who are exceptional. You gain the experience of a dozen people in a short period of time. It's very high value that you can't get coding like a hermit in your parent's basement. You will learn things that you could never learn on your own, like the importance of communication. If you can't communicate effectively with your coworkers, you can't be exceptional. There are 100 things like this that you will learn just from hanging around other exceptional people, how they think, what books they read, some key distinction they know (that you don't know) that will change your life. My jump from an average paying job to a much higher paying job was the direct result of an exceptional friend describing his approach to interviewing. 2. Learn to sell yourself. Most employers are out to get the most work for the least expense. They are actively fighting on their own behalf to make this happen, at your expense. This is how people end up at the sucker-farm jobs. If you don't fight on your behalf, no one else will. It's only you and the employer in the interview, and the employer certainly is not going to be generous for no reason. You have to persuade them. There are two good resources. One is "So Good They Can't Ignore You: Why Skills Trump Passion in the Quest for Work You Love" by Cal Newport. The other is "Pitch Anything" by Oren Klaff. While you probably will never need to pitch anything to investors, you absolutely need to be able to pitch yourself to potential employers if you want to escape the average workplace sucker-farm. Here is a great interview with Oren Klaff: http://youtu.be/fXavS_IY42A http://youtu.be/fXavS_IY42A Ramit Sethi has a course, "How To Find Your Dream Job". Like most of his stuff, I expect it is pricey. You can probably find most of what he teaches for free (if you define "free" as doing your own research for many hours per week for a year or two). Here's how I look at his stuff in your situation. If I could pay $1000 and go from miserable to enjoying work and life, forever, is that worth it? I'd say yes. If you are serious about reworking your life, you will pay for this many times over. He has a ton of free material available, so you can see if you like his style before making an investment.
- ozuvedi 12y agoI went to your blog. If that is seriously yours then I don't think you need a job where you'll be managed by some dumb blokes. You have what it takes to create awesome stuffs. Go work on your dream ! Imagine what & where you want to be after 10 years - some manager or lead of some XX company OR a professional with real value?
- lovelearning 12y agoShubham, I went through your blog and I'm impressed! It looks like you're a person with wide ranging interests. You seem proficient in combining concepts from core mathematics, computer science, practical software engineering and electronics, which in my opinion, is something only few engineers can do and fewer still actually do. Use your creative energies, polymath skills, urge for perfection and your time, to build your own software ideas and perhaps make a business out of them. Don't waste them on your employer's products or your fellow employees. If they like bad code, then let them. You too can lower your standards of perfection, and raise your level of tolerance. Empathize that perhaps their job is as soul crushing for them as yours is for you. Your expectation of perfection in others is the bigger enemy you have to conquer. Expect perfection from yourself, but forget about others. Good luck (from a fellow freelancer!)
- tjross 12y agoI was in a similar position until finally leaving my job this February. I am not a programmer, I was actually an investment banker, but I know what it feels like to work in a soul sucking job and feel helpless. The trouble is, like you said, you get stuck in such a job to "buy time" - for me it was to make some money to pay back student loans - but unless you know exactly what you want to do next or you are actively searching for it, the time gets away from you. It becomes a virtuous cycle - the longer you are in a job like that, the harder it is to leave. Here is my 5 step guide to figuring out what the hell you want to do and getting out of a job you hate: Step 1: Like aurelius said below, the first step is figuring out what the hell you want to do, what you care about. This part has nothing to do with your skill set or which frameworks you should learn, it has to do with finding a mission you believe in. For me, the epiphany was realizing I needed to find my mission. I woke up in the middle of the night gasping because I realized that I had been in a job I hated for over 4 years and all along I knew that I wanted to start a company. I was buying time, but instead of a year or two as I originally planned, it was 4+. The next day I decided to explore every business idea I had ever jotted down. I started reading voraciously about every sector of tech I found interesting. I started studying the history of venture capital. Finally, I was getting on a plane to New York for a dinner with one of my clients and as fortune would have it, in the airport I stumbled upon up a book called, "Makers: The New Industrial Revolution." Half way through my flight after ripping through the first 150 or so pages, I realized that 3D printing/digital fabrication was where I wanted to spend my time. I was convinced that this was going to change the world in a big way and I wanted to be a part of it. I think this search process takes time and is different for everyone, but I'd be willing to bet that the more effort you put into actively searching for what you want to do, the luckier you'll be. Step 2: Once you know what you want to do, you have to accept that you are going to have to sacrifice your free time to make it happen. But here's the kicker - since you've found something that you're passionate about, it doesn't feel like a sacrifice! I'm not sure whether you meant that you're working 8 hours a day and only coding 2, but if that is the case, you have plenty of time left in the day to go after your newfound passion. Personally, I started going to every after work meetup (and some during the day too) in the Bay Area in the digital fabrication space, introducing myself in person, over twitter or over email to anyone who would give me the time of day. I also kept reading as much as I could on digital fab and on startups. Next I started putting together specs, a powerpoint deck, a business model canvas and talking to friends who had started businesses before. The point is start soaking up as much knowledge as possible and moving the ball forward in any way you can. Maybe that is setting up informational interviews with professionals in whatever area you want to get into. Maybe that is taking One Month Rails or Michael Hartl's RoR tutorial. The bottom line is, do something productive every single day. Step 3: Put a date on the calendar you are going to quit by and tell people who matter so you can't back out. Honestly you'd be surprised how much this helps. Saying it out loud actually allows you to visualize walking out the door. Maybe more importantly, by telling other people, you are more likely to hold yourself accountable. You have to keep doing this too. The more you do it, the more comfortable it starts to feel. For me that date was after I received my annual bonus. In investment banking that is basically half your pay so it would have been very difficult to leave when I was just a few months away from a big payday. I'm not sure what that date is for you. Maybe you had wanted to pay off your car later this year and need to wait until then. Maybe you hate your job so much that you want to quit next Friday. There is nothing wrong with either one. However, in my opinion, once you know what you want to do, the general rule of thumb is, the sooner you can quit the better. So if you wait, make sure it's for a good reason because it is very easy to make excuses. Step 4: At this point you have identified the date you will be out the door and you continue to communicate that to your friends, family and mentors, so in the meantime, get yourself as prepared as you can for that date. That means some combination of giving up TV at night, waking up earlier, staying up later, giving up days during the weekend. Determine what skills you need for whatever is coming next and start acquiring them. Use your network - the beautiful thing is, once you know what you want to do and are committed to making it happen, you'll find that people will want to help you. Again, the mantra is progress every day. One day at a time. Step 5: Jump. The truth is you will never be ready. At least not completely. But if you have something you are passionate about and are willing to commit yourself to, it will all be worth it. Consider the jump itself your first success. You will certainly have failures and more successes ahead of you, but that is the fun part ;) Best of luck to ya. I have the utmost faith.
- jf22 12y ago>barely leaves me any time to do so How many hours are you working?
- spencerwalden 12y agoIf you are a decent enough developer, getting proficient in Angular or Rails should not be that difficult. I say back yourself, and get studying, you can do it!