Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Professor Science
Mar 8, 2006
diplodocus + mortarboard = party

Doctor w-rw-rw- posted:

Thanks for the thoughts. To pose one of my other questions again, what are some signals that a company is good or bad, in terms of leadership, communication, opportunity, process, etc.?
(oh hey this also is sort of an answer to differences in senior positions question too)

For me at this point in my career, after having been in bad situations, accountability is pretty much the signal of whether a place is worthwhile or not. Let's say a longer-term strategically important project fails very suddenly--completely misses schedule, simply does not work, so much worse in some critical area that it's not a viable product, whatever. This failure comes as a surprise to higher-ups. Assume this is at a company where you have several levels of hierarchy (in other words, any larger company)--engineers, manager, director, VP, executive staff. Whose head(s) will roll as a result of this?

When managing people, the worst thing that can happen is a surprise. Surprises should never happen. If you're a relatively junior engineer, senior engineers and managers will check in with you to make sure that everything is okay and under control and working as planned. Becoming a senior dev moves a lot of that responsibility over to you; it's now your job to make sure that the team is working okay, notify your management chain of problems, and generally be proactive.

Back to the original failure question--if your company would fire individual engineers without evidence of gross negligence (guy said he's been writing code for six months, turns out he's been playing dota the whole time or something like that), that's a very bad sign, because it means management is only interested in protecting themselves. The exact causes for the failure should be determined--where was the critical piece of information missed? Was someone along the reporting chain filtering information about how things are going, or was due diligence just lacking during the planning process? That fault usually doesn't lie with the front-line engineers, it lies with the architects and managers and directors who approved everything in the first place.

If you can't imagine a director getting fired for a major project's failure, that's a really bad sign. Get out before too long.

Similarly, after major resources have been invested into a product, how often do you see its criteria for success change ("be the best" -> "be competitive" -> "exist in some way" for some major initiative)? Would your company actually fix that (change process to allow for more due diligence, fire architects, whatever)? There's a balance here. You want people to take risks and you can't always do totally thorough due diligence (would miss your market window, can't because of other deliverables you're tied to, whatever), but a project for the sake of having a project is insanely damaging except for the person who gets to wear its "success" as a badge.

tl;dr how many people between you and the CEO are playing politics to make themselves look good instead of trying to make good products?

re markets: mobile is huge and here to stay, desktops are dying, web probably won't take over mobile (sorry mozilla), anyone interested in perf (especially on mobile) has to get used to the idea of using different types of processors (in other words, if you're interested in doing high performance stuff, go learn CUDA, OCL, RenderScript, C++ AMP, whatever), machine learning will explode (especially in retail), wearables will be a thing because everybody thinks it will be a thing, robots in some form may be a thing (sensors and cameras have gotten good, SoCs have gotten good, it's more a question of what would you do with one than can you do it at this point)

Adbot
ADBOT LOVES YOU

Professor Science
Mar 8, 2006
diplodocus + mortarboard = party

Sign posted:

One of the more interesting things I've seen regarding this is to ask to see their code during the interview. If they won't it says that they don't feel comfortable with it or don't feel they have the autonomy to do so. If they do show it to you, ask them to show you a good part and a bad part.
I think this is pretty bad advice, actually. Without context, code quality is totally meaningless. Something super-elegant and written in Erlang may be fantastically stupid for the job at hand. Some piece of crap you wrote in Perl and will never look at again may be perfect.

Doctor w-rw-rw- posted:

Interesting, but that makes it sound like turnover for senior levels/managers could be pretty high, and it's a high risk position. Can someone who reports early and often eventually be seen as too dependent on others, or be ignored on account of being too noisy? Crying wolf and being wrong seems like it could be as damaging to credibility as trying and failing to meet goals (with or without fault). What skills are involved in not loving up at that level?
yep, that's the hard part. it's a balance--don't hide things from your superiors, don't be afraid to ask for help, keep some regular lines of communication open in order to report your status, but don't panic over every little thing that goes wrong until it looks like it could impact the business. the important part is to minimize surprise. if you said three months ago, "hey, this could be a problem," and you said a month ago, "hey, it looks like this is going to be a problem," and now you're saying "hey, this is a problem that is happening right now and I need help to solve it," you'll be okay (at least at any company where you would actually want to work for a long time).

turnover *is* pretty high. I'll claim it's uncommon to last more than five years at a place in the bay. (part of that is growth of FB/Twitter, continued growth of Apple/Google, new Samsung offices, desire to play the startup lotto, and part of it is that it's easier to advance in some ways when changing companies than in the same company)

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply