Coderific

rating for Boeing

1.0 Terrible place for devs posted on September 14, 2009

I worked for Boeing for more than three years, right out of university. During that time, I spent two years on the same project. In two years, I managed to talk to the PM one-on-one exactly twice (PM's college major: communications. Hilarious!). I used the opportunities to explain everything that was wrong with our software project (more on that later), and was met with a deflection of blame. When management longer cares about producing something that works and is more worried about who will get blamed for it, it's time to jump ship. Management had exactly zero knowledge of any element of software design. I got a laugh by discovering that you could order Boeing's internal library books to your mailbox with just your publicly available employee ID number. So I sent a few books on successful project management (The Mythical Man-Month, etc) to our PM. It never sunk in, I guess.

The project (a CAD tool) we worked on was late, blocking, and had tons of upper management eyes and hands all over it. From front to back, every mistake you could make with software was made here. Incredibly poor choice of tools, language (who the hell uses Tcl for CAD tools, seriously?), and people at both the management and developer levels. Project management absolutely refused to nail down any requirements or specifications, which resulted in them changing dramatically every time we had a meeting. A constant turnover of new people learning the tools and committing code meant that there was no manageable architecture to speak of. Interviews consist of a fifteen minute phone screen with zero tech questions, and a "when do you want to start?" at the end. "Your project is late because your code base sucks, you say? Let's double your project's headcount! That should help!" All the good people eventually leave, which just leaves the people that can't get a job elsewhere.

The test team took an adversarial role with the developers and were proud that they could claim the app was 0% working. As far as I could tell there were no SDETs to speak of, just manual testers.

Project management absolutely refused to cut and run from the existing code base. In five weeks, a co-worker and I redid what took a team of 15 people a year and a half to create, except ours featured elements such as an extensible architecture, stability, and predictable behavior. What happened to it? Since our PM didn't want to look like an idiot by totally redoing the project so late in the game, all of the working code got scrapped and we were stuck with an ever-growing stinking pile of crap to work with.

There is very little accountability at Boeing. They call it "The Lazy B Ranch" for a reason. Bad people never get fired and good people realize how horribly the place sucks for software and move on. The only thing that's keeping software there afloat is an ongoing rotation of halfway decent people that put in a couple of years at a time. I'd say that 10% of the devs on the projects I worked on produced 90% of the working code.

I very, very rarely wanted to even go eat lunch with co-workers, so many of them were uninteresting. Sure, there was one guy every once in a while who was cool, but they had more experience than I did, realized how horrible it was, and left almost right away. The corporate culture is awkward at best. They had a Hawaiian shirt Friday without an ounce of irony or any realization that it was used in Office Space, for example. Sometimes there would be a cake or some pizza or something. Yes, these are the kind of awesome perks you have to look forward to at Boeing.

Pay is crap for full-time dev positions. Bottom of the barrel. The salary might impress someone right out of the gates from college, but it's nowhere near competitive for experienced folks. Besides that, the legendary "Boeing benefits" are probably really good for their blue collar jobs, but are just about middle of the road for dev positions. That said, contractors can make a ridiculous sum of money if they have the right skills on their resume (doesn't matter so much if you actually know them) and are put on a project that's under a lot of pressure to get out the door.

My personnel management was great, stuck up for me when I needed them to, and I have absolutely nothing bad to say about them. Unfortunately it's not going to be enough to bump it up to 2 stars.

I've heard a lot of people say that work at Boeing can vary a lot depending on how good your local management is, and I'd believe it. The problem is that it varies from "so horrible you want to stab your eyes out" to "unrewarding in a benign way."

Now that I've worked elsewhere for a while, I am absolutely shocked that I stayed there as long as I did.

0 comments

Write a comment!
    scores in this rating

    development process

    clear requirements 1.0
    design and planning 1.0
    quality assurance 1.0
    automated testing 2.0
    peer review 1.0
    development environment 1.0
    development hardware 2.0
    physical workspace 2.0
    infrastructure and support 2.0
    issue tracking 2.0
    source control 2.0
    product quality 1.0

    culture

    cultivation of creativity 1.0
    mitigation of risk 1.0
    reasonable workload 3.0
    prevention of crunch time 1.0
    hitting deadlines 1.0
    taking responsibility 1.0
    development autonomy 2.0
    keeping ego in check 1.0

    compensation

    salary 1.0
    health coverage 3.0
    paid time off 2.0
    snacks 1.0
    other perks 1.0

    organization

    advancement opportunities 1.0
    employee retention 1.0
    hiring process 1.0
    quality of development management 1.0
    quality of upper management 1.0
    quality of developers 2.0
    team-to-team communication 2.0
    internal team communication 2.0
    management-developer communication 1.0

    general

    location 2.0
    nearby food 2.0
    business model 1.0
    cool technology 1.0
    vision and strategy 1.0
    warm fuzzy feeling 1.0
    overall 1.0

    preferences

    casual dress code 2.0
    use of Free Software 1.0
    development of Free Software unrated
    use of GNU/Linux unrated
    use of Mac OS unrated
    use of Solaris 2.0
    use of Windows 2.0
    use of BSD 1.0
    use of Python 2.0
    use of Perl unrated
    use of Ruby unrated
    use of Lisp unrated
    use of Java 1.0
    use of C# unrated
    use of Objective-C unrated
    use of C unrated
    use of C++ 2.0
    use of PHP unrated
    use of ASP unrated
    use of legacy languages 3.0