Software Engineer Cheat Sheet
Sarah Cooper

1. “It’s a non-trivial amount of work” = I won’t be able to copy and paste (Sarah) = It’s more work than you think it is, and may be more work than I think it will be, but I won’t know for sure until I get into it so I can’t make any definitive promises bc it’s impossible to remember so many different things off the top of my head when you ask me a question,and I don’t want to make promises I can’t keep.

2. “This is a temporary solution” = This is a permanent solution (Sarah) = You wanted it fixed NOW and you won’t give me time to plan so I can do it the right way so this will probably cause problems later when you request other changes. but you don’t want to hear that right now, and you don’t want to hear how this could potentially affect another part of the program you’re using but you’ll still be mad later when item xy or z breaks and blame me even though I tried to tell you. And you’ll complain later when I want to go back and DO IT RIGHT and you’ll ask me why I didn’t do it right in the first place. Um: BECAUSE YOU PUSHED ME TO DO IT FAST. You didn’t want to listen.

3. “I’ll be finished by Monday” = I won’t tell you which Monday (Sarah) = I won’t tell you which Monday because of # 1 and #2. (me)

4. “That’s funny” = I literally hate you (Sarah) = Maybe it is funny. But maybe I hate you. And maybe I have mixed feelings. You’ll never know. These things can be confusing.

5. “Do you want it done fast or do you want it done right?” = It will be neither (Sarah) = You’ll complain it’s not getting done fast enough even if you say want it done right, and then you’ll push me to have it today to the point where I can’t even focus on what I’m doing, so then of course I’m going to turn out a shitty solution. You can pat yourself on the back for this one too :)

6. “Just file a bug” = I have no idea what you’re saying right now (Sarah) = I may understand what you’re saying right now, but I probably won’t remember later, and I’m still trying to get to the bug you told me yesterday that you need fixed RIGHT NOW and there’s a queue, and other people who reported their bugs before you. Get in line.

7. “That’s an expansion of scope” = I forgot you needed that feature (Sarah) = You already signed off on what you wanted and this was not included in that document or discussion. If you want something additional that expands scope, which means you have to wait longer and pay more $ for that time and planning of how best to do it, whether this is actually what you want, and where to fit into the project, and how it will get accomplished.

8. “We can’t test that” = We can but we won’t (Sarah) = we can probably test it IF you’re willing to pay us the $ to create an exact replica of your production systems and run through various scenarios. But you’re not. But you still expect us to test for it. Setting up test environments can be very expensive to test for certain things. However we cannot test for something if you have people going into your system and making little changes here and there but lying to us that “No one is going into the system and making changes but you”. And we can’t possibly think of every possible way anyone can misuse the system to cause an error, so just use the instructions we sent and make sure your customers know those instructions too.

9. “I’ll just put it behind a flag for now” = It will never ship (Sarah) = it may or may not ship. It depends who prioritizes it and if they’re willing to pay for it. I don’t call the shots on prioritizing. I also have a queue of bugs you filed to work on, the scope expansion you suddenly want, and figure out what you did to “tweak” your system behind my back so I can fix that.

10. “I fixed the bug” = It started working again and I have no idea why (Sarah) = Sometimes this happens. But usually I spent some amount of time (between 1 and 24 hours) working on your bug, testing it, checking it in, packaging it and shipping the fix to you.

11. “I can’t realistically estimate that” = I don’t know how estimates work (Sarah) = I can’t realistically estimate that the same day you ask me because every system is different and it takes time to figure out the best way to change/add something so it doesn’t break other things later (see #2), and someone has to pay for the time it takes to work on that estimate too and you expect me to do it for free. I also have varying workloads in other areas that change on a daily basis and that affects the overall delivery date, but you’ll still expect me to stay late, work holidays and weekends, and miss my kid’s birthday in order to get your project done according to my estimate that is based on you NOT changing your scope part way through and my bug queue remaining manageable, which depends on who prioritizes my workload as bosses and bosses of bosses can change those things on a dime, etc. See all the above.

12. “I don’t think users will care about that” = I have dinner reservations at 8 (Sarah) = Users probably won’t care about that. And I do have reservations at 8, and I’ve already stayed late every day this week working on your other stuff while you’ve left at the normal time. So I’m going to dinner.

13. “This is an Alpha release” = It doesn’t work (Sarah) = this hasn’t been fully tested and some things may not work, but you REALLY wanted to see what we had and use it so here you go. You have to report things that don’t work and the process you used up to the point where it broke so we know what to fix bc we are not omniscient and do not have eyes over your shoulder recording everything.

14. “This is a Beta release” = We fixed a lot of bugs but it still doesn’t work (Sarah) = See #13

15. “Let’s phase 2 that” = I’m hoping you’ll forget about it

“We are focusing on high priority fixes only” (Sarah) = I’m going to go take a nap (Sarah) = I’m overworked and totally unappreciated. See all the above.

15. “We have a lot of technical debt” = I copied and pasted too much (Sarah) = We have a lot of technical debt bc you’re impatient, unappreciative and unrealistic and don’t understand what software development involves.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.