I just wanted to let you know your experience is not unique.  I have worked 
on a variety of projects at companies of various sizes.  Every project I 
have ever been on was encumbered by technical debt due to poor processes, 
or flawed technical decisions. It is an extremely important skill (more 
important than knowing technology IMHO) to be able to communicate 
suggestions, and effect change - in other words, you need to be a 
politician, in addition to being a coder.

How you deal with these problems is what makes you a truly great software 
engineer.  To say it another way- if you want to be a truly great 
developer, you need to be more than a coder, you also need to be a 
communicator, and a team player.  

Many of the comments in the previous thread address methods for how you go 
about implementing technical changes in a corporate environment.  Learning 
these skills, is worthwhile, and will make your career more satisfying.

A couple Google Engineers just wrote a book about how to develop some of 
these 'soft skills'.  I would suggest checking it out.  
TeamGeek - 
http://www.amazon.com/Team-Geek-Software-Developers-Working/dp/1449302440/ref=wl_it_dp_o_pdT1_nS_nC?ie=UTF8&colid=28MZQC1X44FJB&coliid=I2T1FWJGZU3RZ3

Those same engineers have given talks at conferences, which are always 
entertaining and filled with valuable advice:
Google I/O 2011: Programming Well with Others: Social Skills for Geeks- 
http://www.youtube.com/watch?v=q-7l8cnpI4k

Google I/O 2012 - The Art of Organizational Manipulation:  
http://www.youtube.com/watch?v=OTCuYzAw31Y
I have been reviewing these resources myself, as I just started a new job, 
that looked very promising on paper, but turned out to have a lot of 
challenges that weren't clear during the interview.

Dealing with process, and effecting organizational change, is not something 
most developers like to do. However, it is a necessary evil of the software 
development process (and present in almost every organization).  Hone your 
communication skills, which will make you a much better developer, and a 
more valuable (and respected employee).

Good luck, hope you find comfort in knowing that you are not alone in your 
frustrations.  

-Mike


On Friday, July 20, 2012 10:32:06 AM UTC-7, zentr...@yahoo.co.uk wrote:
>
> Previously: is a digital marketing company the place for keen 
> developers?<https://groups.google.com/forum/#%21topic/javaposse/TWL8x4Srk7w/discussion>
>
> **** UPDATE!! A YEAR AND HALF AFTERWARDS ****
>
>
> I made it!
>
> I quit *that* job and landed on one the most successful startup in the 
> area (can't name it for reasons you'll soon understand, but just to let you 
> know what I mean by 'most successful', we just passed our series a fudging 
> and everyone and their uncles is talking about us).
>
>
> It's an API Java shop. All I'm gonna say. I was hired to join what the API 
> team. I'm one the (two) API guys.
>
>
> Hang on... my profile in two lines: 6 years of Java web development. 
> Spring fan. ORM. SQL. Some HTML. JS/JQuery. 
>
> Recently tried Ruby/Sinatra and Node.js/Express on two little personal 
> projects (and loved them both).
>
> Learning Scala and recently got over *Don't Make Me Think* and the whole 
> fuss about Responsive Web Design.
>
>
> That said, these guys told me they're growing and growing, scaling and 
> scaling. 
>
> Their playground's on AWS and certain unspecified performance issues on 
> mysql made them start thinking to move some 'things' on Dynamo DB.
>
>
> How did they buy me?
>
> Money? Not at all.
>
> Stock options? Apparently not... yet.
>
>
> I guess I was just very frustrated about the situation at my previous 
> employer and it just felt cool to jump off and try the startup dope.
>
> (I dropped other job offers meanwhile. They were my first choice).
>
>
> I must admit I might have been easily fooled by the keyword-dropping 
> (cloud, nosql, higly-scalable, machine learning...).
>
> Shame on me. I know.
>
>
> Day 1: I discover the following things:
>
> - mr.API keeps unused imports on his classes. I guess it's some sort of 
> fetish.
>
> - API compiles with ant. Fine... I figured it was just me hating ant in 
> 2012. I must've said something like "let me *mavenize* all your 
> projects... please let me!". I kinda did it in the end.
>
> - not just any ant, some shit netbeans does for you, which resulted in 
> them telling me I was not able to use Eclipse (my IDE lover). I called it 
> racism and laughed (and just used ant command line).
>
> - no unit testing. No continuous integration.
>
> - no dependency injection. I knew they were not using Spring... but I 
> figured they were using weld or something.
>
> Code's full of calls to static methods of helper classes. Code has the 
> stinky tendency to use ThreadLocal as their food trolley. Never seen it 
> before.
>
> - production deployment (on all 6 instances of glassfish) is done BY HAND. 
> Does not look like they want to change this.
>
>
> Not bad for your first day, right?
>
>
> My first task: set up an oauth authentication provider. oauth 2.0. Cool. 
>
> I was *allowed* (literally) to use spring security oauth which to me 
> looked like the quickest way. Fine.
>
> I got it fully working in like 2 days and if it wasn't for their silly 
> customization requests, It would've been faster.
>
>
> What now?
>
>
> It's been a month now and I want to jump off the window. Here goes a short 
> list of things I can't stand or bothered me.
>
> - CTO can't code. Seriously. And proudly admits it.
>
> - mr.API screamed at me because I was (successfully) using @Inject and 
> things like that… especially on the EntityManager that they keep passing 
> over as a parameter from rest resource to resource helper and so on.
>
> - I said I would've liked the oauth provider pages to follow the mobile 
> first sort of rule, only to find out they had no idea what I was talking 
> about (and I ended up media-querying my thingie… which was actually kind of 
> fun).
>
> - I was asked to produce (in less than a day) and Facebook Connect kind of 
> button… a nice companion to our newly born oauth provider (that nobody uses 
> yet)
>
>
> Where am I going?
>
>
> I hate it here! Sure we're front page news and all… but the amount of 
> incompetence and bullshitting I heard so far is unbearable.
>
> I was told I was late for a deadline I was never informed of!
>
> There is no project mgmt tool. No agile or anything for that matter.
>
> They try to fix problems by throwing sheer hours at them (yes, this is a 
> quote from a book I don't think anyone in this company has read).
>
>
> Is it just bad luck? Should I ask whether they use maven or jenkins at job 
> interview?
>
>
> What I might get out of this is maybe the flexibility (work-for-home/no 
> badged entrance kind of thing) and (maybe) a trip to our offices in Palo 
> Alto (if I'm very lucky).
>
>
> What I wanted to get out of this was learning a new language (Scala 
> maybe), new things (nosql, hadhoop, mahout). In a word: learn and innovate.
>
>
> What now?
>
>
> I'm giving this one or two more months. If I'm still treated like a newbie 
> by these guys, I'm calling it a quit.
>
>
> Sorry for the rant again.
>

-- 
You received this message because you are subscribed to the Google Groups "Java 
Posse" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/javaposse/-/cbetWyNuMlAJ.
To post to this group, send email to javaposse@googlegroups.com.
To unsubscribe from this group, send email to 
javaposse+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to