Kashif
personal growth
business
software engineering
my projects
software engineering
December 1, 2023 at 4:50 PM
How to live without estimates
From my experience and by observing other companies, I've concluded that the companies who do estimates and set deadlines regularly move slowly as compared to those who don't.
July 9, 2023
Testing
Before you mark your PR ready for review, always test it manually as well. It is not the QA’s job. QA's job is to assure quality. Not to test your code. It is the developer’s job to test their code and make sure it’s functional.
June 8, 2023
Code Reviews
We should define a software engineer as someone who does rock-solid code reviews and writes code in their spare time. Not the other way around.
June 2, 2023
Releasing
Think of release as a train that features/PRs/developers have to catch. Not as a tool to ship a fix or features. Set a cadence and release. Do not wait for that one last PR to get merged in the trunk to release.
May 22, 2023
Security & Compliance
A local gym membership management system has very different security requirements than Twitter. Analyze the game you are playing and act accordingly.
May 2, 2023
Estimations
Most deadlines aren’t deadlines because a lot of them are breached and no one dies.
April 28, 2023
Making Money
With only a job, the probability of making it big is equivalent to the inverse of DynamoDB's uptime.
April 22, 2023
Promotions
If you ever feel like wanting to get a promotion, rethink your priorities until you no longer feel like that.
April 17, 2023
Finding a Job
A developer in a startup would have a hard time clearing interviews in a big organization and fitting in and vice versa is equally true.
April 8, 2023
Refactors
As Naval Ravikant said, 10000 iterations, not 10000 hours.
March 30, 2023
Making Games
There is a difference in the following: Making games because you like playing games. Making games to make money. Making games for a professional career. Making games for fun. In your career, understand your skin in the game and what game you are playing. Work accordingly.
March 21, 2023
DevOps
Doing DevOps will make you a better engineer. Period.
March 12, 2023
Infrastructure
Understand the basics and no matter how much I stress this, someone is still going to get an AWS Associate Architect certificate and be completely clueless about how to convert a computer into a server that securely hosts an API to serve/receive data.
February 28, 2023
Programming Applications
After all the effort in studying the pros and cons and viability of a solution, if you are still stuck on deciding between two techs, flip a coin. Decisiveness goes a long way. Ditto for life choices.
February 21, 2023
Managing Peers
Be willing to help others especially when they are blocked. Unblock others first. They will like you and be willing to return the favors. Be reliable, trustworthy, and avoid gossiping. Give direct and honest feedback when solicited.
February 16, 2023
Managing Managers
A note of caution here is that if your manager is a project manager, do not ever aspire to take that seat. In good software companies, I believe that role would disappear in near future. It’s as redundant as “ueue” in Queue.
February 10, 2023
Managing Reports
Ideally, you or your organization should hire people no one has to manage.
February 3, 2023
Hiring
If a candidate’s interview feedback is not a “HELL YES!!!”, err on the side of rejecting a good resource than hiring an average one.
January 25, 2023
Professionalism
You should have the ability to work according to the environment and expectations. A professional software engineer in a startup vs a corporate world can have very different and quite often contrasting skill sets.
January 17, 2023
Communication
Be a good writer and you will become a good human being and certainly a superior professional.
January 7, 2023