Ask HN: How to play the politics game at your company?
Inspired by the quitting google thread, I was curious how a new programmer can excel at a company. That is, on paper.
How can we better play by the rules and earn raises instead of having to switch companies?
22 comments
[ 3.1 ms ] story [ 57.2 ms ] threadDiscredit other teams through data analysis
But since you asked, develop leverage and pick your battles.
It's fine to use a job offer from another company to get a promotion but don't expect it to keep working again and again.
You can't totally ignore politics. Those who don't do politics will still have politics done to them.
But don't try to "win" via politics. First, it's not your skill set, and it is other peoples' skill set. If you go head to head in politics with them, they'll wipe the floor with you.
Second, who do you want to be? A developer? Or a politician? I absolutely do not want to be a politician.
So do as little politics as possible. And when you do it, do it for defensive purposes - to keep yourself from being the victim of politics.
That is the only career question worth asking.
You've placed constraints on it, such as 'new programmer', 'play by the rules', 'earn raises'.
How do you know excelling at life means playing by the rules? How do you know more money means a better life? How do you know you don't want to switch companies?
You don't. The way to find out is to just live your life, and not lose sight of what matters - excelling, at life, by rules YOU set. And they won't be the same rules, they'll change as you grow.
How do you set rules by the way? By following your gut, heart, and intuition, and sometimes what other people say. You so far have it backwards, where what others have said has left no space for following your own instincts, hence the question you're asking.
The biggest regret you can have - is living out somebody else's ideas and life, even if you 'excel'.
In general, do not work on what you think it is important. Work on what the management think it is important. If you don't understand why do they think something it is important, ask them.
It is okay to disagree with them, but try to frame it as a proposal and see how much they follow along with your idea. If they don't like it, then do not pursue that project. The job of upper-management is to set priorities.
Your manager should be able to helpfully answer direct questions like, "What do I have to do to get promoted?" If your manager doesn't have a good answer, and you care about getting promoted, you should find a new manager.
Once you become more experienced at the company, you may not need your manager's help at this as much. You'll develop connections within the company and be able to gather widespread support for your projects directly.
1. Never ever, ever shit talk your coworkers - if you have something to say to someone, say it to their face, or don't say it at all.
2. Do NOT contribute to the grapevine, only take from it - be a good listener and you will hear all the gossip, news and complaints.
3. Be social - take time to go out to coffee, drinks, lunch with any and every one you can. This goes double for people in other departments. Accountants are a wellspring of useful information and having them as friends is only to your benefit.
4. Know the difference between what is a priority (everything) and what is important. The latter is what makes your team/boss look good. All boats rise with the tide.
5. Don't be afraid to question a decision that you think is terrible BUT make it a question, and have facts and data to back it up...
6. Your only as good as your last success. Your own failures can be successes, if you screw something up OWN it and FIX IT.
7. Watch out for people who put politics before their own job. If you HAVE to interact with these types of people getting everything in writing is to your benefit. If your given verbal instructions then follow up with an email that documents the item/issue/instruction - Lines like "I'll get started right away on XXX as soon as ... be creative, theres always a bottleneck, or roadblock you can call out or as for a link to.
Try to sneak into an irreplaceable position, where you can ask for whatever salary you want. Tech is full of these opportunities. As a junior, you are often given unsexy, boring stuff that nobody wants to handle. That's a good place to get lots of leverage.
Be friends with everyone, especially other departments further away. Social ties are a mesh, and the more mutual friends you have with, say, a boss, the higher everyone's opinion of you. If three of someone's friends like you, chances are they'll think well of you too.
Learn to listen well. Listening is something that needs to be learned. This is the easiest way to make friends. It also unlocks most leverage. You'll learn surprising things. Like a subordinate might care more about being in the same department as a cute intern rather than being promoted and getting more pay.
My core rule when dealing with politics is just to know yourself and know your counterparts. Everything else is easy once you do.
- In an analytics role, the junior is assigned the data cleaning work. It's boring, it requires a lot of dirty, ungeneralizable work. And they don't get to do the modeling work and delivering insights that appear more impressive.
- A junior SWE is assigned to maintain some in-house software. They squash bugs, but don't get to design new products or present on new launches.
"Everyone agrees" that data cleaning / maintenance is important, but there's hardly visible credit for this kind of work. What's the best way to gain leverage here?
Tackle boring or unsexy tasks with the same creativity you would bring to other tasks. Share your approach with team members. They may have similar problems and may appreciate your solutions.
How sure are you that it really is ungeneralizable? Just because it appears that way at first glance doesn't mean you won't find opportunities for automation once you understand the domain and the typical dirt in the data better than anyone else (note: 'dirt' can often be modelled).
And well, once you're the developer and maintainer of the data-cleaning system that has become the company's competitive advantage...
Similarly, bug-squashing is often an opportunity to really understand some important but unglamorous system (eg. payments, or authentication), as managers will notice that bugs in system X are fixed much faster and more thoroughly when assigned to jr. developer Y, and this often leads to becoming the go-to person for implementing new features in that system.
If you can't be replaced, you can't be promoted.
You can expand your territory. Like you can go from being the only guy who knows how to modify the installer, to being the person in charge of builds, CI, backups. Then heading a small department on this.
- know how ‘things are done around here’
- know how decisions are made, including the less obvious factors that are likely to affect decisions
- know where the power base is in the company – who makes the running; who are the people who count when decisions are taken
- being aware of what is going on behind the scenes
- knowing the issues that gets everyone in the office all worked up
- know who is a rising star; whose reputation is fading
- Know the 'hidden agendas’ (see above) – try to understand what people are really getting at, and why
You can get the answers for above by answering this: Where are they coming from?’
- Know what other people are thinking and seeking
- Know the 'interest groups': network, network, network
2. People skills is a must for the above. You should be thinking of people or organizational challenges all the time, or you'll miss the mindset to rise significantly up.
3. Many people complain about their team leads, managers or senior leaders. This usually happens because these senior are working at a higher level of responsibility and ambiguity than you are. You should rather be thinking what would you have done if you were in their position. Understand the challenges they have, by directly asking if needed. This will not only help develop your relationship with them, but also position you to develop the skills needed faster, without yet being in the position of responsibility that they are in!
4. There is a lot of entropy in any team/organization, and unfortunately also a lot of people who are increasing it. Be the one who reduces the risks and brings order to the chaos, whose judgment can be trusted. Keep in mind for this that the real challenges are often not on technology side (in other words, if you think technology challenges are more critical, you are perhaps missing the big picture).
5. Try to become irreplaceable for the team/company in your project and beyond. In my experience, this will not come in your way as [6] suggests. You must however not get limited to the tools and technologies specific to the company, or else your market value will suffer within a few years.
6. Never say (or even feel) anything bad about anyone ever, keeping Hanlon's razor in mind [1]. But then, how do you deal with the stupidity? Well, <b>their stupidity is your opportunity</b>. (I created this out of Jeff Bezos' famous quote, "Your margin is my opportunity." [4])
7. Do not let yourself be masked from political issues around. A good manager would aim to mask you [5], but that can curb your growth since you won't develop the skills needed to master and survive corporate politics while being masked.
8. There are books available today that teach you corporate politics [2-3], showing how easy it is for anyone to do it, and how difficult it is to counter. Reading these books should be a required reading for anyone aiming to go significantly high. And trust me, it's better to learn this from books or from other people's experience than learning this stuff the hard way. (The latter would be painful for one, and second, you may never actually learn.) I have read [2] and felt that I should have read it earlier.
9. Ask questions whenever you do not understand something or if your own thoughts do not align with the decisions being made. Of course, be polite in this (e.g., "I was wondering if option X also has been considered" instead of "why are we not going for option X"). People around would be happy to explain to you while also developing trust in you, and often would take the suggestion if it will actually reduce their mental burden. The sooner the better in asking questions.
[1] https://en.wikipedia.org/wiki/Hanlon%27s_razor
[2] https://www.amazon.com/dp/0743262549/
[3] https://www.amazon.com/dp/0312332181/
[4] https://www.inc.com/jessica-stillman/7-jeff-bezos-quotes-tha...
[5] https://news.ycombinator.com/item?id=16488...
Not surprisingly a lot of talent fled that company, me included.
Be there for your team and your boss, so you can expect the same in return.
Be blunt and don't sugar coat it with everyone, so as your time/reputation grows inside the company, people will know about you... essentially you would want your reputation to precedes you... this will help you avoid a lot of politics and BS...