- Sell! Even if you dont have a product, you need to sell. 'Build 'em and they will come' : I've never seen this happen.
- Always be hiring. Every person you meet, always be fitting them into a hiring pipeline.
- You have to be 360-degree. You may focus on areas that are core competencies but you cannot 'divorce' yourself from areas you have no idea about. You need to upgrade and have meaningful discussions with folks you put in positions of responsibility.
- Dont wait for the perfect person to show up! Start with whoever you get, often folks you did not think much of will surprise you.
- Be clear about redlines and communicate them clearly. If people violate red lines, let all hell break loose. Else be nice and chill.
- No one shows up to work and says 'ok let me do the worst possible job today'. every one does the best he/she can in their personal contexts. if it is not enough, communicate clearly. help where can.
- Be transparent with your team. Be fair to them. These are still valued.
giving 2 <beeps> about memory. we would need to be very very careful about allocating and then recovering memory. treated it as more precious than gold. thats all lost or at least no one pays as much attention now imo...
We've managed to reduce our spends by almost 50-60%. Some pointers:
1. Comb through your bill. Inspect every charge and ask "Why do we need this?" for every line item.
2. If user latency is not a problem, choose the cheapest regions available and host systems there.
3. Identify low usage hours (usually twilight hours) and shut systems off.
4. Transition one-off tasks (cron, scheduling etc.) to lambda. We were using entire servers for this one thing that would run once a day. Now we dont.
5. Centralize permissions to launch instances etc. within a few people. Make everyone go through these 'choke-points'. You might see reduced instances. Often engineers launch instances to work on something and then 'forget' to shut them off.
6. Get AWS support involved. I'm pretty sure with the bills you are racking up you must have some AWS support. Get some of their architects etc. to check out your architecture and advise.
7. Consider Savings Plans and Reserved Instances. Often you get massive cost savings.
8. Consider moving some of the intensive number crunching to some of AWS' data crunching services. We moved a high-powered ELK stack for analyzing server logs to CloudWatch. A little more expensive in the short term, but we are now looking to optimize it.
In my experience, AWS has been very supportive of our efforts at reducing costs. Even after a 50-60% reduction I still feel there is scope for another round of 50-60% reduction from the new baseline. All the best!