Nike Autopsy

Nike has a fascinating campus, the restaurants and pay are good and it's an easy work week.  Here's why I quit...

1) Passwords are recorded into a public log.  I debug the issue and the fix is three string operations (find, cut, paste).  I subclass the Logger class as a SecureLogger and switch it in the original class, which avoids changing any other code.

2) The team rejects it because they say the bug is only in that one class.  Fine, I move my code into the original class.

3) The team rejects it, the code should be in a utility class, which implies REUSE.  I wrote the SecureLogger  specifically for reuse.  But fine, I make it a utility class.

4) The team rejects it, a regex function has better performance. Okay, now I'm pissed off.  The regex library loads hundreds of functions but it still executes the same three operations.   I write a small program and prove regex is much slower.

5) The team rejects it because their formatter used wildcard package paths. They say it's a  performance issue again.  No, it's not.  The compiler creates the same byte code, regardless. I write a small program and prove I'm right again.

6)  Now I'm the bad guy for proving them wrong twice.  

7) My code fails code validation because there's no class constructor.   A constructor is pointless but I add one.  

8) It fails because it's a public constructor.   I change it to private.

9) It fails again. It's impossible to pass the validation step, it fails with or without a constructor.

10) I'm assured the problem is my three lines of code.  I waste a week guessing until somebody finally admits the validation is broken but they pretend to use it for "quality control".

11) Now I'm the bad guy again, exposing deception.

I went to lunch, had a drink, went home and never went back.

Two weeks to write three string operations.   And this wasn't atypical, just the last straw.  It's not any one item but the cumulative pretense  of bumbling Indians pretending to know more than they do.