I'm a recent CS graduate from a decent university in the US. It's no CS powerhouse but it's well respected and decently known. I won't name which because I don't want my co-workers to accidentally see this and identify me.
During my last semester we had a guest lecturer in my parallel programming class. He came from a local startup which supposedly created advanced systems to assist the work of other statups.
The engineer from the startup went on and on about how each day there is a challenge and you learn so much. I decided to apply and see what would come out of it.
I went through a very tough series a interviews complete with Python puzzles and whiteboard problems. During these interviews I was reassured the job there was challenging and rewarding. I got a (generous) offer and accepted.
Fast forward to my first day and I ask my team lead what's the project I'll work on and I quickly learn that the challenging work is done in a sister office. I get told that this location mostly does very simple client facing Java Swing applications. I was devastated and almost quit on the spot. I would have if not for the fact that I have very large student debts and can't afford to not work.
Now I've been working there for a month and I've tried everything to get assigned interesting work. It's pretty much impossible since no such work is even done at my location.
How do I get myself out of this? I'm looking for other jobs already. I could omit my current position from my resume but then I'll be forced to reveal it if I get an interviews during regular office hours.
I have a friend who wants to personally refer me to work on his team at Amazon but I don't want to blow the interview. I would practice but at the end of the day I'm so burnt out from boredom and repetitive work that I can barely stay awake.
I know there are no clear cut solutions but I'm interested in hearing from people who had similar experiences.
- Take care of your immediate responsibilities first (rent, food, loan payments, etc)- this is non-negotiable unless you have a golden parachute (i.e. mom & dad). It's quite honorable to work for survival.
- Always keep an eye out for a better job, the more interviews you go on the easier they will be. Never be satisfied where you are if personal growth is important to you.
- NEVER expect to just be given the most interesting work out of the gate at a new job. That's not the way it works. You generally have to prove yourself. If they are not delivering on a promise that may be a separate concern, but I'd be skeptical of a job that would give a rookie dev the "interesting" work (which is usually the architecture work).
- Identify problems at work and solve them in your free time, then present them to the appropriate people; that is the best way to fast track your own interesting work. Note the politics of your company and be sure to not step on any toes.
- Most importantly, do your own interesting work on the side. Start a company, create/contribute/maintain an open source project. I can't stress enough the incredible opportunities that exist for skilled developers that have some initiative.
- Get in a good routine that works to accomplish your short and long term goals, it's unusual for a job to satisfy that entirely.