Always good to hear other people's experiences. Thanks again!
70 karma · joined May 29, 2014
Always good to hear other people's experiences. Thanks again!
Thanks for the feedback
Thanks!
Thanks all for advising on DigitalOcean, I think I'll go with them :)
As for the S3 for image storing - that's definitely an option since the free tier of Heroku would be 'good enough'. Thanks!
I think my plan will be to hold off on buying stock until I know I can continue my job remotely when I move. If I can hold my job for longer than 1 year, then it'll be likely I'll invest in the stock.
Thanks all!
I've decided to stick it out and make the most of it while I look for something more suitable for my skill level. At worst, this position has shown me what I'd like to avoid in the future.
The main issue is that I need to be mentored. It's my first full-time job and I shouldn't be the one mentoring anyone unless they're an intern with no knowledge of enterprise software development.
I'm also afraid that the offshore team won't learn to write code correctly the first time and that I'll become the "refactoring guy" -- which is a horrible way to develop software.
For a first job, I shouldn't be telling devs who've been in the industry for more years than I have, that they're doing it wrong. I should be the one being told I'm doing it wrong. I should be the one copying and pasting code, but I know better than that to do it right the first time.
Aside from switching technologies, it's more about how we get things done. Java and Spring aren't the problems, it's more of everything else that's the problem.
I did an interview at a company where my old mentor works and they've been looking to expand and hire new engineers, but it's been 2 months. I just sent his boss an email to see if anything's changed, because that'd be my #1 choice -- work with a mentor I know is good and if he says the place is good, I trust his judgement.
Now to wait and see if luck is on my side -- but I've started applying elsewhere, so I'll keep my fingers crossed.
It's just scary leaving a job when I don't have another lined up.
And as for the management part... it's a lost hope to be honest. I think one of the reasons they switched from Rails to Spring was finding the right Rails developers was difficult. The company doesn't pay competitively, so that was a big hit on offers to Rails devs. Additionally, it was harder to find Rails devs.
The funny part is... we got this offshore vendor for Java Spring and none of them knew Spring. So we would've been better sticking to Rails and had them learn Ruby from the get-go.
I'm on the same side of things -- weighing the good monthly pay vs. finding something I actually enjoy.
It'd definitely be best to wait until I have another offer, but I find that I'm far too stressed over something I have the power to change.
I shouldn't be this miserable at my first job -- at least I had hoped that prior to starting.
I completely agree that there's no perfect framework and I definitely feel the pressure of switching to something new; however, I have been working with Spring since ~May and although I follow best practices to the best of my ability, the offshore team doesn't.
The team leads that I work with in-house don't even understand the application enough to help me along the way, so any help I get is from the offshore folks who've completed the dev work and understand the applications -- which eats up their dev time too. I can't even rely on documentation or comments in the code because almost none of these things exist. So to understand a feature flow, I have to read through copy/pasted code with some Java classes spanning 2000 lines of code that need to be refactored. All while keeping to unrealistic release deadlines (which I'm sure I'll find anywhere else lol).
Some of these problems stem from how our BAs create the user-stories. Our BAs have a tendency to bloat stories and write them in a waterfall-like fashion -- when we're Agile. So the offshore devs take on too much work, point them far below their real size, and write shit code. The code comes back to us, and we have to redo it -- there's nothing good about this. We've tried changing how BAs create stories, etc. but nothing has changed, it really feels like all hope is lost.
What we think is 'impacting' and 'fulfilling' is all relative. What I'm trying to get across here is that most jobs aren't super exciting. If you're not happy in your current situation, keep looking for a job that IS exciting/fulfilling/impacting and don't complain, because you already know what you want and that's not what you currently have. Of course there are jobs that actually impact the world directly, there's just a smaller number of these jobs available. The Google Search team is a team that changes the world, but good luck joining them.
Go help with the government health care crisis if you want to change the world. Health care systems are in a terrible state for the future.
I'm not trying to be an asshole, I'm just trying to show you that the real world isn't what you've imagined throughout your college career, that's all and it's all good.
I graduated last month, 2nd in my class for computer science. I previously interviewed with Google, Microsoft, Amazon, and Twitter -- all rejections! It was super depressing. One of my only friends at school landed a job at Twitter and his GPA was much lower than mine, he didn't work as hard, and now he gets paid 50% more than I do. Yes, 50% more, no exaggerations. Fuck me, right? haha
So what am I doing now? I started my first full-time software engineer job last Tuesday with the same Fortune 500 retailer I did internships and co-ops with in the past. I code business applications for the company, it's fun but not super interesting. I'm making good money -- not top dollar, but a fair salary (maybe a little lower than I expected for having 4 internships before graduation, but still.)
The real world is boring and no matter what work you're doing, it's probably not going to be super interesting. Think of it this way, even Google needs teams to do their boring work... I'm sure there are bored people at Google getting paid much much more than me (and you)!
Needless to say, I'm not excited about my job. I'm excited about getting paid, but work is work. I'm working with the frameworks and languages that I want and I think that's all that really matters in the end.
The last thing you need to keep in mind is that the work you're going to do, as a programmer/engineer, will most likely NOT change the world. Company's taglines like "Come Change The World With Us" -- shit like this -- is used so you think their company is doing great things, but they really aren't doing anything great. They use these strategies to attract top talent. It's the same reason Target and Coke use the color 'Red' to sell their products via their label (red means cheap!) Honestly, if you really want to change the world, change professions... and remember, becoming rich != changing the world -- you could own a sweet startup that does nothing more than sends "Yo!" to a friend on your friends list, but this doesn't change the world.
So what can you do now that you're bored and you're fortunate enough to have a job in this economy? My suggestion is to work on something you really care about on the side. Make a project for yourself or work on an open source project that you think is helpful or "world changing". Live your life day by day and every now and then think about "how can I make my life easier" -- and build something that does make it easier.
Transitioning from school to the real world is really weird. I've done it 4 separate times before graduation (internships and co-ops) and I've always loved work way more than school. We all have high hopes for graduation and when we don't get what we want, we can dwell on it for some time. Your best bet is to take things slow and take action on ideas when they come to you in your free time. Work on open source projects or make something for yourself. Be happy that you have a job and can pay off loans (if you have them)
Sorry this response was so long, but I hope it helps in some way :)