u/Humanarmour

For the coders/software engineers/whoever deals with code on a daily basis

I've been working as a software engineer for three years and my team and I have been working on this one app specifically. I was actually hired to work on this one app, so I basically saw it from the ground up. This codebase is huge, with thousands of lines and many external dependencies. Maybe it's just me but I know every single line. I can look at a log and tell you exactly where it's coming from. There are multiple developers on the app and they don't have the slightest idea of what is going on outside of what they coded. I know all of it.

Maybe I've hyperfixated on it or something but I love it. I'm also extremely good at refactoring code. Just looking at what it's currently doing and migrating it to do the same but using different things.

I have a great memory and impeccable attention to detail and they shine here.

I'd like to hear from other people in the same line of work!

reddit.com
u/Humanarmour — 5 days ago

Misunderstandings when speaking - over explaining

I regularly talk to this one guy at work and even though we meet to discuss things we both know and understand, no matter how hard I try to explain certain things I am always met with "I didn't quite catch that" or "could you repeat that?" or "do you mean [something unrelated to what I said]?" or "I didn't follow that" and this is by no means a failure on this guy. He's very patient and understanding and it's very easy to talk to him, there's always just these things. Let me give you an example.

Him: I noticed you aren't doing X here and I think I may know why but I want to ask you why you're not doing it and see if we both have the same reasoning

Me: [knowing exactly what he meant and thinking 'I didn't decide on not doing X on my own. We discussed it when we last met and we arrived together at the same conclusion. He must have forgotten we discussed it together and thinks I did it all on my own. I don't want to give the reasoning we both arrived at together as if it were just my own and basically take ownership of it] yes, we discussed this last time

Him: Oh! [surprised that we discussed it]

Me: ... so we both probably have the reasoning, but we both said we wouldn't do X because x, y and z and we agreed it would be better if we just didn't do it.

Him: [pause. He's thinking. I know he didn't understand all of it] so you're saying you decided to not do X because xyz?

Me: yes.

There are two problems here

  1. I mentioned we'd both talked about this earlier before to showcase the reasoning was not mine alone. I did not want to make him feel bad for not remembering. I was not looking to point out that he's forgetful or anything like that. I don't know if this is what he took from it but I didn't mean that but I also didn't specify why I said what I said

  2. when explaining xyz, I explained them in depth when I could have been briefer.

To me, my message is extremely clear but it conveys information 1) and 2). I understand that while processing 1) he might have missed 2). But, I never intended to convey 1). My message was purely 2) but I can see now looking back how 1) slips in there.

Another example:

Him: did you see the message on the chat?

Me: yes.

Him: [pause] what did you think of it?

Me: [oh on his first question he was asking me if I'd seen it AND what I thought about it. He made a pause because he expected me to keep talking] I thought [my thoughts]

This one is not really a misunderstanding of meaning, but rather a misunderstanding of intentions

Another example: he's asking me about how something should work. If it should be allowed or not

Him: I know this is something that is typically my job to decide but you've worked on this feature more than me and so I want to ask you what you think should happen.

Me: ok. If we take into account what we're asking the user to do, and the failure escenarios we're taking into account, and how the replay looks like and what we consider a failure, this is a bug and it should be allowed.

Him: [pause] I didn't quite catch that. You're saying it should be allowed because of the replay scenario we're taking into account?

Me: [thinking yes but not entirely] I just mean [explain it all in detail]

This last example is a big dodgy here because I obviously can't explain the context of it well. It makes it sound like he doesn't fully understand the problem or something and that is not the case at all. I explained the way I did because I knew he would understand it. He knows all of it. It's just my way of explaining wasn't good.

I can't really explain how I explain things and maybe I'll come up with a better term someday, but I think I explain in boxes. What I mean by this is that given whatever it is I'm talking about, I separate it into different boxes in my head. This separation is obvious to me. It just comes to me as the only way to separate the problem. I will then go over the first box and explain it fully. Once that's done I will explain how it relates to box 2 and what that box means. And so on until I finish it.

For example, if someone asked me to explain what brushing your teeth is, I automatically see these boxes in my head.

- Items (toothbrush, toothpaste, a sink, water)

- importance (why you should do it. What happens if you don't)

- Time (when you should do it and how often)

- Action (how to actually do it)

I understand most people when asking about how to brush your teeth may only want the last box, the Action box. But to me that is insufficient. I may tell you how to perform the action. But in order to do that you first need to know what the Items are, for example. And you should also know the Time so you know when to do it. And knowing the Importance of it will change how you perform the Action. By knowing how serious it can be you will take it more seriously and this will affect how Actions looks like to you.

I understand this is a small example but it is very indicative of how I think and explain things. I have trouble skipping over steps because it is all important in my mind. For example if someone tells me "put this on the shelf" I will ask why. I want to know what the reason is. If the reason is "I don't want the baby to get a hold of this" then I know the drawer is actually a better option and suggest that. If the reason is "I just don't want it on the floor" then I know it is safe to set it on the table. If the reason is "because it belongs on the shelf" then I will put it there, this time and always. I just always have those extra questions to know the deeper, underlaying meaning of what someone is asking, so I just give all the reasoning when explaining so the person I'm talking to doesn't have to ask me a single question. Whatever question they might have had, I've already answered it

reddit.com
u/Humanarmour — 5 days ago

I think I was rude at work - need advice

I've been at my job for three years and it's been very good. I'm the youngest there and it was my first job, so everyone is aware of this and treats me like a kid (they have children around my age). The team is scattered around the continent and I work mainly with this one guy who's in another location. We've never met. He's been my mentor/senior in charge of me. I'm a fast learner and pretty smart so I've picked up on things quickly and we get on great. He's extremely patient and very kind and I really enjoy talking to him. Whenever we meet to discuss something we end up talking for 1 or 2 hours and I always feel recharged afterwards. He's very easy to talk to and even though I'm not, he's great at not making it awkward.

My boss (same location as me) is a very fair man but he sometimes talks about people behind their backs. Nothing too serious and he seems to always be justified in what he says. I've always been cautious though about what he says and take it as information but not as facts. I let myself come to my own conclusions. A couple months ago he mentioned this one guy was going to be joining our team. I knew the guy by seeing him around the office and I saw him once helping someone on our team with something. So, I thought he was a good guy and was surprised when my boss started saying he liked causing trouble and was rude and disrespectful. I took this as just my boss talking about his opinions and not facts.

So, it was a couple weeks later and this guy has officially joined our team. The senior I enjoy talking to was assigned to him and so they met on the phone and whatnot to discuss work. The new guy then comes to me and this girl because he knows we work with this senior and starts asking us about him. Because I like the senior a lot, I always only say good things about him (he's very smart, he knows what he's doing, he's very patient, he's very neat with his work, etc). The new guy said he disagreed and found him to be rude and called him an asshole. I was taken back by this. The senior is genuinely one of the best people I've ever met. I didn't know what to say and the conversation quickly ended after that but it left a bad taste in my mouth.

This last Thursday we all had a team meeting where we discussed progress. The senior goes one by one and we talk about what we've been up to. He starts by asking the new guy about what he's working on and he explains and says something like "yes, I've been working on X. It's going great! I'm using A to complete the task". The senior recaps by saying "okay, so you're using A and you think it's going well and you will be able to finish it?" And they kept talking like this. In my head I'm thinking "I've worked on X before and we were using B, not A. You can use A for sure but the work that's already there is being done with B. Did he change it? Does he not know that what's already there is using B?" I was just thinking about the work and how this A vs B may cause a misunderstanding or rework in the future. I spoke up and said "excuse me, sorry. Why did you say A? we're using B" the new guy I think didn't like my question and asked me something back that I didn't understand at all and simply said "the work that's already been done has been done using B" and he said "yes, ok B! That's what I meant" so it seems like he'd just misspoke earlier. I thought "good, that's been cleared " and moved on. Later on, I see the girl who's sitting next to me got a teams message on her computer and she was being sneaky about it. I don't exactly know how I knew that, I just did. We were still on the call, so I pretended to not have noticed this. I peaked again at her computer and it said "what is going on with your partner? Is [my name] angry?" And my heart dropped thinking "what the hell. That is a very distasteful message to send to someone". The girl replied "no, I don't think so. Why?" And I felt betrayed by this answer because I felt she was feeding into it rather than taking my side. I know he replied something and it was quite lengthy (not an "I'm not sure" or something like that) but I wasn't able to read the response.

And you know, I wasn't angry. At all. I've never been angry at work. I feel that's a very personal emotion to have at work. At work I've been cold and tired. That's it. What is kind of eating me up is what made him think I was angry. Was it what I said? The way I said it?

Given what my boss said about this guy and the fact he already spoke badly about the senior I like very much makes me think it's more to do with him than me, but maybe there's something about me too. Is it possible that I've been coming off as rude? I really like the senior and I get the feeling he likes talking to me, he even said he likes it when I ping him and apologized for pinging me so much because he doesn't want to bother me (I told him I don't mind it!). But, I am afraid I've perhaps come off as rude to him sometime. I truly always mean the best

reddit.com
u/Humanarmour — 5 days ago

Even though I'm not naturally good with people, when I want I am a social chameleon. I can adopt other people's language and mannerisms and instantly clock them as what "type of person" they are. Because of this I think I would be a good salesman.

Do you think the same for yourself? Do you think you're a social chameleon?

reddit.com
u/Humanarmour — 16 days ago
▲ 29 r/devsarg

SDD (spec driven development)

Disclaimer: lo usé poco y todavía me estoy adentrando

A mí la verdad me parece una cagada. No digo que no funcione o que ande mal o nada. Si, me parece útil y todo lo que quieras pero es un bodrio la verdad. Tenemos definidos un millón de specs, cada uno tiene chotocientas líneas. No hay manera de entenderlos, leerlos o modificarlos manualmente. Es algo meramente por y para la IA.

Entiendo que parte del descontrol que tenemos en el equipo es por la falta de conocimiento y que es algo nuevo y nos estamos organizando todavía, pero me resulta muy aburrido y deprimente. En mí caso la documentación (ya sea leerla o producirla) siempre me pareció una tarea tediosa y aburrida, lenta y ahora es básicamente el 90% de lo que tenemos que hacer.

No sé. Esperaré a ver cómo se desenlaza porque por ahora no me estaría gustando

reddit.com
u/Humanarmour — 17 days ago
▲ 216 r/devsarg

Mí rol generalmente no me lleva a revisar PRs pero esta vez tocó. Era un refractor mediano diría yo de una API legacy. Cuestión que lo empiezo a revisar y me di cuenta al toque que la persona que lo subió no lo había ni leído, mucho menos pensado. Se dio la casualidad que ese día en la oficina tenía a esta persona sentada al lado mío así que le fui tirando el feedback mientras lo veía. Sino, el PR hubiera tenido alrededor de 100 comentarios y no exagero. Dejo algunos diálogos de la sesión:

Yo: por qué acá hiciste esto y no aquello?

Persona: que cosa? mmm no se. Para que le pregunto [a claude]

(2 minutos después me da una explicación que no tiene ningún sentido y no responde a mí pregunta. Le pido que lo cambie a como yo decía)

P: ah pero y como se hace eso?

(yo pensando "y ese es tu trabajo")

Y: no sé cómo sería el código en si. Debe ser algo así (le expliqué a grandes rasgos como lo haría)

P: ah ok ahí le pido que lo haga.

Acá tuve el privilegio de ver cómo usaba la IA. Básicamente le escribía el peor prompt que vi en mí vida, agarraba el celular mientras claude resolvía. Cuando terminaba le daba aceptar a todo, sin ver absolutamente nada. Corría la app de nuevo para ver qué andaba y me decía "ahí está"

Otra cosa:

Y: por qué se cambió esto? El método tal retornaba true y ahora retorna false.

P: no se. Yo no hice eso. No le dije que cambiara eso.

(Yo mirando a la nada)

P: igual no está bien que retorne false ahora? Si lo cambio fue por algo

Y: nono. Esta lógica no cambio. Tendría que estar igual que antes.

P: ok ahí le pido que lo cambie

(Aca me estaban saliendo canas verdes. Cómo le vas a pedir a la IA que te cambie literalmente una palabra???)

Otra:

Y: (empiezo a ver un archivo y el largo, tiene lógica rara, es difícil de leer). Que es este archivo? Que hace esta función y dónde se usa?

P: a ver.. y eso? No me acuerdo de eso. Para que le pregunto que hacía.

(Acá ya me estaba muriendo en la silla)

P: ah sí esto es (alguna explicación regurgitada de la IA)

Estuve como tres horas mirando el PR. Entre que le hacía preguntas, le daba feedback, esto lo otro, etc. Al final siento que termine yo haciendo el trabajo.

Quiero aclarar que esto no es una crítica a la IA. Claramente aca el problema es del uso que se le dio. El problema es que el uso este está permitido y es posible hacer esto. Antes, no creo que nadie nunca haya subido un PR del que literalmente tuviera tan poca idea. Realmente no me podía contestar ninguna pregunta. Siento que trabaje mucho y perdí mucho tiempo que no me correspondía.

reddit.com
u/Humanarmour — 21 days ago