Soft Skills Engineering - Episode 366: No FE work and my co-worker is a parrot

Episode Date: July 24, 2023

In this episode, Dave and Jamison answer these questions: I’ve been working with this fintech company for the past year as the only FE developer in a team with other 6 BE developers, but re...cently, I’ve noticed that the product team has slowly stopped including frontend (FE) tasks in the sprints. Moreover, they seem to have deprioritized FE tasks in general, allocating me only one task that I can extend at most to three days within a two-week sprint. This scarcity of work has been bothering me and has left me feeling unwanted in the team, which is particularly pronounced given there’s a significant amount of FE work that needs to be done, yet these tasks still don’t seem to make it into the sprints. During our one-on-one sessions, my line manager has given me good feedback, which leaves me even more confused about the situation. I’ve raised my concerns about the lack of work with my manager, who simply suggested that I discuss the issue with the product team or feel free to tackle a backend (BE) task. When I’ve tried to engage with the product team, they usually dismiss me with non-committal responses such as “we have some work coming.” and sometimes “we’re at max capacity as of the allowed story points in a sprint, try helping where you can”. Additionally, when I’ve attempted to take on some BE tasks, my colleagues often seem too busy to guide me through this new approach, leaving me in absolute frustration. Other FE developers from different teams seem to be shipping loads of features. Given these circumstances, am I genuinely unwanted on my team? What further actions should I attempt before quitting my job ? any advice is appreciated. I suspect one of my colleagues is either not an actual dev or not as skilled a dev as they claim to be. During meetings, whenever they are asked a question, there is always a very long pause before they unmute, and sometimes when they do unmute, I hear the tail end of a different voice answering the question before they themselves answer the question. Should I bring this up to my manager?

Transcript
Discussion (0)
Starting point is 00:00:00 it takes more than eating a carrot and calling it biohacking to be a great software engineer this is episode 366 of the soft skills engineering podcast where i am your host jamison dance i'm your host and carrot eater dave smith soft skills engineering is a weekly advice show about all the non-technical things that go into the technical field of software development like i mean i'm biohacking if i eat a bunch of skittles it doesn't have to be like a positive improvement it's just hacking i'm hacking my blood sugar levels yes they're going in the wrong direction yeah i mean depending on where you want them to go that's true that's yeah who are we to place a value judgment on blood sugar levels we've done worse
Starting point is 00:00:52 uh dave do you want to thank our patreon our patrons man our patreonicals we want to say trying to kleenex that word i want to give a weekly shout out to those who are contributing at the just most generous level and they are trash panda the computer science book.com the re-elect jameson dance boogie brigade the re-elect jameson dance committee santa hopar noah frasier lowe kent c dodds jenny kim owen chartle craig motlin i love mavis the stochastic parrot alice just tuscarawas ohio patreon.com we're hiring irish and monkey face emojis jonathan king web tau awesome and testing oladapafadie will angel nick hathaway travis anders brayden canes john grant bartek tatkowski cody professional puzzle solver sale nick santar philip john
Starting point is 00:01:44 basile and a one-time shout out to johanna stein and dustin if you would like to join this illustrious crew this illustrated crew go to soft skills.audio and click the support us on patreon button where if you contribute enough we will say your name emoji or unpronounceable town in the midwest united states uh every week and if you contribute any dollar amount we'll send you an invite to our slack community where you can hang out with some very interesting people of all stripes many different stripes vertical and horizontal yes it feels like there's a joke there to be made about going plaid yeah i guess plaid is just higher dimensional stripes yeah it's like a stripe overlay complexity you can't do it in css so don't even try um what would the 3d version of plaid be
Starting point is 00:02:34 i'm sure mc escher has done a piece like that though sure all right should i read our first question yes this is from an anonymous listener who asks i have been working at this fintech company for the past year as the only front-end developer in a team of six other back-end developers recently i've noticed that the product team has slowly stopped including front-end tasks in the sprints moreover they seem to have deprioritized front-end tasks in general allocating me only one task that i can extend at most to three days within a two-week sprint This scarcity of work has been bothering me and has left me feeling unwanted in the team, which is particularly pronounced given there's a significant amount of front-end work that needs to be done.
Starting point is 00:03:17 These tasks still don't make it into the sprints. During our one-on-one sessions, my line manager has given me good feedback, which leaves me even more confused. I've raised my concerns about the lack of work with my manager who simply suggested that I discuss the idea with the product team or feel free to tackle a back-end task. when i've tried to engage with the product team they usually dismiss me with non-committal responses such as we have some work coming and sometimes we're at max capacity of the allowed points in a sprint let's help where you can we're already at max capacity even though you are additionally totally underutilized okay sorry teams yeah well yeah we'll talk about that i think
Starting point is 00:03:58 don't let reality intrude in your sprint metrics additionally when i've attempted to take on some back-end tasks my colleagues often seem too busy to guide me through this new approach leaving me in absolute frustration other front-end developers from different teams seem to be shipping loads of features given these circumstances am i genuinely unwanted on my team what further action should i attempt before quitting my job any advice is appreciated wow listen we know you're only working three days out of 10, but we're at capacity. Yeah. I'll start stroking my beard at the top of my head and extend it all the way down to my toes. Very pensive. And if you want to see that, I guess go to YouTube. Yeah. So I have been in this situation before on the planning
Starting point is 00:04:47 side where there's so much stuff to do and we have what feels like more work than we can comfortably accomplish in the sprint and yet there is someone who doesn't have anything to do because they cannot contribute to the important stuff we have to accomplish to this for this sprint and it sucks it feels like either you have to find them something less important to do and then you're adding even more stuff to the already overfilled sprint or say please help even though you might not be able to help and i don't know pick up this new skill and slow the team down so i yeah it's a tricky bind to get in but what so there's two options there but the first one seems fine adding more work well you're saying add more add more work to the already overburdened sprint
Starting point is 00:05:36 it's only overburdened in the sense that you have let's say what do we say five six back-end developers who are at capacity and one front-end developer who's not so why why does the sprint somehow magically have a cap on the amount of work that can be delivered in it it's actually individual lanes represented by each developer that are the cap right yeah so what's the problem true there there's there's like an uncomfortable math that you do where you're you're trying to make sprint capacity this team thing and not highlight some people do more work than other people right but it's true but it is true and i think that's what i've done in the past to resolve this is just say well it's gonna get even more full but it does feel weird because it's like
Starting point is 00:06:24 there are some people who are who are swamped on critical stuff yeah and here we are pulling in like fix this es lint right warning that has been a warning for two years so i wonder i wonder if what's happening here is that the bottleneck is not actually the front end developer. But which obviously is true, since that person's hardly getting any work. But rather, there's some designer or product manager who is laser focused on other things at the moment. And those things tend to be all back end intensive. And so it's not so much that they're saying, we don't have important work for you. But rather, all the work that normally flows from product team members to the developers is that that upstream area of product is totally occupied on backend intensive
Starting point is 00:07:12 stuff. Like that's a, I think a very likely explanation of what's going on here. That makes sense. It's also hard to resolve because there's always technical improvements to do to the code base. Um, so I, I am confident you can find stuff to do. If you want to find something that's really impactful for the business, then you have to reverse engineer that whole flow of product and design. You got to do it all yourself if they're all occupied with other stuff. That's hard to do because there's a lot of friction. I've noticed this more and more over the last 10-ish years that the product teams tend to own the decision-making on what we will build Next. And if a developer has an idea, they're almost unempowered to go build it because it's
Starting point is 00:08:02 like, well, look, we have a process for this. It has to go through user research and the product team administers that. We have to build clickable prototypes in Figma and the design team administers that. And then we have to get sign off and someone else administers that. And then it's like, okay, well, I just want to make this a little bit easier to use. I know it's very obvious. Like, hold up there, buddy. We got a lot of people that do that. And so it's hard, even as a front-end developer it's hard to actually make changes to the front end i mean the good news is you can just do it what are they gonna do yeah to stop you from doing it yeah in the short term like they are not going to write the code if they're going to say please build this thing yeah they won't
Starting point is 00:08:43 might not even notice it happened actually yeah the bad news is if they don't notice it happened someone at some point might say hey what'd you do for the past six months and if your answer is like well i kind of waited have you heard about the value of slack time in uh i maximized productivity yeah i was so ready for any opportunity that never arose to instantly jump on it yeah uh i was improving our responsive potential to opportunities by making myself available adding resilience to the system it was a flow optimization yeah i was creating excess capacity to absorb shocks to the system to absorb nothing it turns out the so it does feel like the back-end folks feel pretty busy the fact that product is saying we're at mass capacity for the sprint and back-end
Starting point is 00:09:44 is too busy to help you figure out how to work on backend stuff, it would be convenient if you could just wave a magic wand and say, well, I will work on whatever the most important thing is, whatever that is across whatever stack and whatever tech, right? Then we're going to get into the whole full stack discussion and how full is the full stack and what's the role of specialization. But it is, if you had a time machine or found yourself in this situation in the future i think it it is useful to be able to dip your toes into different areas even if you're not an expert in them so you might be a front-end expert but if you can't do anything on the back end then you're very specialized and if circumstances change to make that specialty
Starting point is 00:10:27 temporarily or longer term less important then you're you're in a tricky spot to adapt so i think this is a pitch where at least in this circumstance it would have been useful if you had written a teeny bit of back-end code, learned how to run the system locally, gone through that flow. Yeah, especially since you apparently have a lot of free time right now. I mean, that's true. If you have a lot of free time, the back-end developers are too busy. You get to reinvent it from scratch. It can be hard, though. I have a lot of sympathy for people who are trying to ramp up from scratch without help on a new technology stack. It's rough. And It's not just the technology stack.
Starting point is 00:11:09 Especially on a big system. Yeah, it's all the stuff that's baked into your company's code. Oh, you need this account in the system that someone else has to go make for you. Probably permissions is the number one blocker for people getting up to speed. Especially people who are kind of semi-rogue. It's like, yeah, why don't you work on the back end? Except everyone who can help you is totally occupied. Well, I just need this account.
Starting point is 00:11:31 That's why I say get rid of permissions. Slowing us down. I want to, if I could just go and have lunch with this manager, I'd probably give a little feedback to them. And it would be, hey, your team member came to you and said, I'm underutilized. And your response was, go talk to product. And I find that to be a little bit concerning. It's kind of a low ownership position to take where it's like, look, product just tells my whole team what to do you know so if you're not being told what to do that's your problem and i start to wonder what's the point of the engineering manager if not to keep resources fully utilized
Starting point is 00:12:15 yeah discuss the issue with the product team yeah that does make sense they're like well my hands are tied i couldn't possibly i just do what product says you know it's like well yeah okay I mean, if that's what you want your job as engineering leader to be, is just take orders and deliver on them, then I guess you've given the right direction to your team member. But I find that to be a, I find that, I find if people do that, I feel like they're not rising to their potential or actually contributing at their full potential to a team. If you just say, look, my job is to take these papers that product puts over here and turn them into production code over there.
Starting point is 00:12:59 you know, I don't have an opinion on what I build. I don't have any input or feedback. I just do what I'm told. And that feels bad. I wonder. Yeah. I mean, don't say that to them. Like, yeah, no, this is what I would say if I went to lunch with your manager. You just say, send them to Dave. Listen, my lunch schedule is wide open. We can go have lunch anytime. I'll fly to your city. You know, I don't know where you live in the world, but. Well, let's explore of that. So you're not going to tell them, hey, do your job, please. But how do you have that conversation with your boss to say, hey, the thing you told me to go do doesn't work. Please, please do something. Help me. Yeah. I mean, I think what you're learning here is kind of like
Starting point is 00:13:47 what we've said, I think a few episodes ago when we were talking about feedback or the lack of feedback. Here, you have a similar situation. In that call, we had, in that episode, we had someone say, I'm not getting any feedback or constructive criticism at work. No one's telling me how to improve. And here, you have a situation where no one's telling you what to do. The product team isn't giving you enough work. Your manager's not telling you what to do. So surprise, surprise, you're going to have to be proactive and find valuable ways to contribute in the absence of clear direction from your organization. And honestly, some of the most successful people I know are the people who don't wait around for someone to tell them what to do. But instead,
Starting point is 00:14:27 they look at a situation and they find a way to navigate through it and get valuable things done. And that's, I think, where you find yourself. And so instead of sitting around saying, please tell me what to do, I think if I were you, I'd go to product. And well, first, I would look around and figure out what's valuable. I mean, you've been around the company a while. You can probably find some really valuable things that need to be done. And you probably understand the product and design and research process a little bit to where you could contribute to those things a little or do like a, you know, like a 20% version of them. Put that all into a document and take it to product and say, I think we need to build this on the front end. Here's my proposal
Starting point is 00:15:04 for how we do that. And then say, I just want your sign off to do it. And then just go do it. You'll take it to them and then do it. Be brave. Especially if there's some magic opportunity that doesn't involve a bunch of back-end work exactly they don't have stuff for you to do it's it's much easier to say hey i'm gonna go do this thing let's go instead of say hey all these plans you have i need to change them to go do the thing i'm proposing right exactly because here they don't have plans for you so so fill them and i think they would be grateful i may maybe you never know some people can be touchy about this like hey you're get off my lawn that's my turf you know so i do have another idea though i don't know what you would like to hear it i just want to
Starting point is 00:15:46 confirm that i have permission from you i would love to hear it okay so instead of me telling you your idea will you just tell me what idea to have and then i'll explain that i think you should pass the mic to do you have any pets in your house see if they have stuff to contribute no i really do have an idea so okay every front-end developer and every developer of every functional role always has in the back of their mind a list of things that need to be done to their product that might not even be customer facing that which a product manager will never ask you to do so this is a front-end situation so why don't you take this opportunity where you've got less work coming to you from product to do one of those things.
Starting point is 00:16:34 For example, let's say you're on React or Angular, and you're a few versions behind, you probably need to get that updated. You know, and product is never going to say, hey, are you on the latest version of all the technologies that we use under the hood that I have no idea exist? You know, they're never going to say that. And so you can use this time to do that. In fact, my team at work just did that because we had one of these moments where the back end work was kind of getting done for a bunch of new features, but the front end work wasn't ready yet to do. And so they took that opportunity to upgrade our front end web framework. And it was it was great. It was a much needed thing to do. It took a while, you know, it took like several
Starting point is 00:17:12 weeks to get it all done, because we had to, there were there was dependencies. Okay, I'm sorry, that happened. And the timing was great, because now front end now the back end is ready for the front end to start consuming. And so now they're in a place where they are ready to start doing that new feature work. So, you know, fine, you can almost always find some of this, call it tech debt, call it operations, kind of the maintenance work that needs to be done on your code base to keep you up to date on the treadmill that your product team will probably never ask you to do. That's true. I think the last thing I want to say about this is this feels like a risky situation, but this could look like to someone a few levels removed from your team is,
Starting point is 00:17:50 huh, we have one extra person on this team. They don't do very much work. It doesn't seem like the work they do is important maybe we don't need them and given given these uncertain times that's a thing to be concerned about and if you are going to tackle important technical work you should at the very least have very clear buy-in from your manager on why this is important to the business so that they can help support you and kind of broadcast that out. Yeah, I agree. If you go rogue, that almost always goes bad.
Starting point is 00:18:28 But sometimes it doesn't. Yeah, sometimes you're a hero. That's our advice. Sometimes it goes bad and sometimes it doesn't. All right, should we go to the next question? Yes, let's see. I'll read this one. This comes from an anonymous listener who says,
Starting point is 00:18:43 I suspect one of my colleagues is either not an actual dev or not as skilled a dev as they claim to be. During meetings, whenever they are asked a question, there is always a very long pause before they unmute. And sometimes when they do unmute, I hear the tail end of a different voice answering the question
Starting point is 00:19:04 before they themselves answer the question. Should I bring this up to my manager? Ooh. I love that there's a whole genre of my coworker might be an imposter type questions. Yeah, maybe they faked their interview. A different person showed up than who we interviewed. Maybe they're working multiple jobs.
Starting point is 00:19:27 Yes. And it used to be that I heard about this a lot in the interview process, but I don't know if I've ever heard of someone actually feeding live information verbally during that actual job. I mean, that's expensive. You have to have someone waiting around all the time
Starting point is 00:19:46 Only when you're going to be in a meeting. Yeah, that's true. I guess you just share your meeting schedule. I think you want to get that person to work with you, not the middleman. Go hire the other person. Who is it that's like powering three other developers? Yeah, whatever you're paying the engineer is clearly enough to cover this person's salary with some take home. So maybe you'll even get a discount.
Starting point is 00:20:15 is it sometimes when they i is this like a live i i'm gonna ask more questions we can't answer is this them frantically looking up videos that they are then watching or i wonder it's got to be a live person but then why would hmm i have so many questions do they have this person on some other call and they like don't have headphones so that they're like wear headphones i don't know pull the scam off better or is it someone literally sitting next to them whispering in their ear that gets picked up on the microphone yeah but then why yeah this is wild yeah totally oh boy what would you do i mean let's say that you had strong enough evidence that you knew they were being backed up by someone else does it actually matter like what if they're
Starting point is 00:21:07 doing a good job with this backup helper yeah that's what i was just thinking like is i could see this being frustrating but maybe the work they put out is amazing because they also hand all the work to this other person right like maybe what's really happening here is this other person is this like puppet developer who's able to do the work of five people and they're like you said you want to hire them of course but they don't they have no interest in working for just one company and so what if they just produce adequate work i suspect they don't though i mean i can't imagine that being the case yeah i agree probably depends on the company i bet i'll bet you you take one of these like super amazing developers they can do two three four jobs yeah if they're literally
Starting point is 00:21:57 doing all the work and and this person's only job is to kind of be the face yeah what if someone came to you and said, I'm willing to split 50% of my paycheck with you if you'll just consult with me for like 10 hours a week. And then you find four people to do that with. And now you're just consulting with these people. You're not actually employed by any employer and they're just feeding you half their salary. I'm sure that exists. Is that, I feel bad about the idea of people doing that directly where they work several full-time jobs. I know it happens and it seems wrong to me what about the person yeah the the person that the power behind those people is that wrong i mean yes you just have clients i don't know i don't think so i think they're just advising
Starting point is 00:22:42 yeah i think the person who is splitting the salary with you would be wrong but you found the ethical loophole yeah you've outsourced finally the moral problem here yes we're three years into this work from home situation yeah finally we crack the code on how to do this and still sleep well at night outsource the grift and you just work a lucrative job and let someone else do the grifting part of it yeah it's like no no real organized criminal white collar criminal actually does the dirty work themselves i kind of want my name on that payroll if my name's on the payroll you adp can correlate it your name has to be on the payroll i just sit at your house and advise you
Starting point is 00:23:26 in our call center that's just full of remote workers. I think I would bring this up if I felt like I saw or had concerns that my co-worker wasn't getting the work done or wasn't producing quality stuff. And I, yeah, I assume that has to be the case. Maybe you don't know though. I don't know. Maybe the team is large and you don't really see what they do that much. Listen, I think we got to go back to the business idea here. okay i got some ideas okay hit me what what really is the difference between mentoring someone you know where you meet every month or two and discuss current career challenges and things what if you just take that you know the same idea but magn maybe an order of magnitude more
Starting point is 00:24:14 frequency that's just real-time mentoring it's like the trapezoid rule like what is the But yeah, if you make the interval between mentoring sessions infinitely small, I mean, it's still mentoring. Right. I'm just the integral of mentorship. Yeah, exactly. Okay. And that sounds like a good name for the company because it also sounds like integrity. Yeah, real-time mentors.
Starting point is 00:24:43 Integral mentorship. Integral mentoring. Yes. We have the most integrity. look it's literally in our name yeah how could we be unethical oh man oh okay sorry i think i mean you got it is really compelling you got to try and stump the person behind the person now how do you come up with a question that they could not answer or make a question okay here's how you prove that they're actually getting real-time information have you ever heard of
Starting point is 00:25:13 like password timing attacks where yeah you you measure how long well you explain it you explain yes yeah actually i was really glad you were about to start because i can't remember the details but it's something it's something like you can tell uh how close your guess is to a correct password by how long it takes the server to respond to your password attempt your login attempt and so some uh some advanced systems will actually have random sleep time baked into them so that you can't do this. Well, anyway, what if you apply this same principle to trying to prove that there's someone behind the camera helping them by measuring their response time to your questions based on how long it would take them to relay the question to the person behind
Starting point is 00:25:59 the camera. So, and then correlate that and then come up with a number and say like, you know, for each question, what's the correlation of the amount or what's the amount of time it took versus how long the question was, because you would expect to see a linear increase in response time based on the duration of how long it takes you to say the question, right? I guess there's a flaw in my plan though, Jameson. I was thinking maybe they would have to relay the question, but what if they're sitting right there listening to you in real time? So I guess maybe that doesn't work. Yeah. Shoot. There's always a very long pause. I just talked myself into and out of a great idea. No, I think you're onto something here. I think what you need though is
Starting point is 00:26:35 a question that requires context that is not contained in the question because then they have to like explain it and yes clarify something that the person you're speaking with the fake co-worker the alleged fake co-worker yeah that they should already know the context they should already know but that the person behind the camera doesn't know but another another weakness if they've just been parroting stuff back and forth they might already know the context yeah they've got all the context that's the advantage of integral real-time mentoring yeah i'm gonna start a website integral real-time mentoring.com we could actually make a hoax site about that i think it'd be really good well i think we've answered it we've uh just do that just make a
Starting point is 00:27:24 business out of it if you can't beat them join them yeah the problem is the delay is too long make the delay shorter yeah and then your problems are solved oh goodness okay i gotta ask you jameson would you bring this up with your manager if you suspected that you have a phony co-worker who's getting help behind the scenes remotely i would and i would feel guilty and like a tattletale but do it anyways because i feel like there's i don't know i i would your sense of cosmic justice Yeah, I think so. People should do the work they're hired for. And if they can't, then... Then they should outsource it to someone else, right? If they have misrepresented it in a way that requires ongoing sneakiness, it feels bad.
Starting point is 00:28:17 Yeah, it does feel bad. I wonder if we're going to start seeing employment agreements that say things like, I alone will perform this work. I will not outsource to someone else. I will not consult with someone else except for mentorship and we'll have a carve out for mentorship and yeah all these other things but the intervals between mentorship sessions have to be greater than this time they cannot be infinitesimally small infinitesimally whatever that word is uh if we launch this company integral real-time mentoring and uh that starts getting named explicitly in employment agreements i think that's how you know you've been successful yeah when yeah when when rules have to change to account for the loophole that you've created then
Starting point is 00:28:57 you've done it definition that's the acceptance criteria you should see how deep this goes too i mean if you schedule a one-on-one meeting with this person do they do the same thing is it like yeah just talking like where are you from how are you consulting with people yeah how am i what about that ludicrous sports display the other day then long pause i mean is this really good text to speech synthesis hooked up this could be just a machine yeah it could be it literally could be an ai which actually that's a problem is because i think real time integral mentoring uh corporation llc limited will uh probably be replaced with ai yeah that's true probably not the best time to start a new company based on stuff that could be
Starting point is 00:29:50 computered away all right well have we answered the question i think so good luck i'd probably talk to my boss i i would i'll just throw this in i think i would approach my boss in kind of a humorous way like listen this might sound crazy but i have a hunch and it's kind of funny that our co-worker over here is actually a phony who i don't want to know the word phony is not the right word i think they're actually getting help on the side from someone to do their job isn't that weird isn't that funny anyway i thought you might want to know about that see ya you know just just drop the little hint and move on and see how the manager handles it from there because i don't know what you want the manager to do is to do all the awkward investigation for you
Starting point is 00:30:31 because that's kind of their job yeah so you don't have to so plant the seed so much like this co-worker is outsourcing their job you outsource the job of dealing with it to your manager except Like that is part of, that's okay. We've agreed to that already. Yeah, that's okay. All right, we've answered it. What can people do if they want their own questions answered, Dave?
Starting point is 00:30:54 Go to softskills.audio and click the ask a question button where you can fill out our form. Thank you so much to everyone who does that. We love reading your questions. Just this giant heart emoji forms above my head every time we open up that document and look at all your awesome questions.
Starting point is 00:31:07 Thank you so much for sending those in. Please keep it up. and when you don't a giant broken heart emoji forms above my head so you have both the carrot and the stick nice keep dave happy don't make jameson sad yeah thank you we appreciate it we will catch you next week

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.