Saif Chaudhry

Hi, i'm a Senior Software Engineer working @ Red Hat. I have 6+ years of experience working on creating simple, clean, and performant user interfaces using the latest and popular web technologies such as React, Redux, Tailwindcss, Next.js, etc. I have 4 values that I always try to emulate in the workplace:

Take Ownership

I really excel when it comes to taking responsibility for a feature end-to-end, working with adjacent teams, and proactively keeping people on track.

Whenever I'm starting a new feature, I have a process for gathering information, and deciding what actions need to be taken in order to get everyone's gears moving. I communicate with Product on product requirements and learn as much as I can about what the customer's end goal is. I communicate with Design on mocks and figure out what Components we already have in our Design System, and what needs to be modified due to the requirements of the feature. I communicate with the backend team on API structure based on the mocks and component hierarchy, and collaborate with them on what works or needs to be tweaked based on what is feasible. I'll use Design Docs to communicate all this with the rest of the Frontend team and get their opinions on what might or might not be feasible by deadlines

Execute

I like to enable the team to collaborate effectively, efficiently, and transparently in order to deliver features with high velocity and little entropy.

I make an effort to keep development as transparent as needed. You could think about it as having clear expectations, iterating, and re-adjusting expections. It's like a muscle that needs to be worked in order to improve. In my 5 years as a Software Developer i've constantly tried different approaches and processes to get better at this. Creating milestones and working towards shipping partial, yet functionally working, pieces has been the most effective. I break the feature into smaller pieces, and start working on the tasks that have greater unknowns as they are usually the leading cause of shipping features late.

Always Stay Curious

I have an interest in exploration, prototyping, and introducing teams to new tools and techniques that improve developer experiences

I previously worked with our designer on researching about a particular tool called tailwindcss, which was quickly gaining traction as a utility-first css framework that helps rapidly build UI's through it's highly customizable and low-level nature. The issue that prompted this effort was the lack of an overall design system, and the inconsistencies that arise when multiple developers write new css for new components. This is an issue that happens potentially at every company. You can check cssstats.com to see how many rules, selectors, declarations, properties you have in your app, and you'd be surprised at the numbers. As more code is written, there are more variations in styles, and that can quickly create inconsistencies in the app that aren't so pleasant for user experience. With tailwindcss we were able to create a set of base classes that we could tack onto different components. Since we essentially create varying styles by repeatedly using these base classes, the need for creating new css would be almost unnecessary. So as you can see, I like finding ways to increase developer satisfaction. Not only do I get to experiment and try new things, sometimes it can be a big help in making everyone just a little bit better.

Show Humility

Being able to write advanced algorithms and other complicated functions in Javascript is worthless if no one wants to work with you. Mature engineers know that narcissism, a big ego, and belittling others sends a negative signal to others.

I take considerable measures to ensure that I communicate effectively with my peers through attaining constant feedback on where I can improve, and working on myself. I aim to be assertive but not passive or aggressive in the way I get my point across. The work place should be a safe place for peers to share ideas, critique, and be critiqued. I firmly believe that it is a positive-sum game, and that we should all be pushing each other to get better. When we forsake humility, it breeds distrust, and ultimately deters progress for the company, the team, and ourselves.


© Saif Chaudhry