Reddit -> Beehaw until I decided I didn’t like older versions of Lemmy (though it seems most things I didn’t like are better now) -> kbin.social (died) -> kbin.run (died) -> fedia.

Japan-based backend software dev and small-scale farmer.

  • 0 Posts
  • 69 Comments
Joined 1 year ago
cake
Cake day: August 14th, 2024

help-circle









  • I switched companies. I started go when replacing php at a previous company. I wanted to do rust at the time, but my options from the CTO were go or newer php (we were 5.x IIRC). I chose go.

    My current company decided on go before I started. There’s some python ml stuff and some other things in functional languages, but we’re primarily go. I don’t know why specifically it was chosen. The old codebase was a bit of go and the original legacy in Ruby. I’m definitely glad they decided to move away from Ruby slowly (and compleltely in the new codebase).


  • I’m mostly making sure they didn’t completely lie about being able to work in the language and can explain what and they would do, why, and how they respond to feedback. I expect people to be varying levels of nervous and that’s fine. I work with people to get them focused and take the edge off as much as possible.

    What I ask for usually is related to what we need to implement, but a more basic chunk of it to, for example, show that the candidate understands concurrency and can use basics in the language to do something with that (which we do frequently).

    For many positions, we do not have homework and this is the only coding we get (kinda depends on role and project).

    As a newer company and still technically a start-up, the boss paying the bills can decide we need to chase something else and he isn’t being talked out of it. This can lead to very fast collaborative design and coding of PoCs which can be more intense than the interview. I don’t like it but it is what it is. Not everything we do is nice, stable, and long-term.

    I can relate to needing that job; I’ve been homeless, so I definitely kno the hat that pressure feels like and why nerves alone are never a deciding factor for me.


  • I give live coding tests generally based on the level they claim to be at in the language. It doesn’t have to be perfect as I’m more concerned with why they’re doing a thing. I usually pick something fairly basic with some edge cases just to see if they mention it.

    As opposed to homework, it also proves that you can at least basically work in the language in question (I’ve had a couple of people who got to my round but seemed to know almost nothing about a language they claimed a lot of experience in (like declaring variables and struct members wrong… seriously). We also caught someone that didn’t seem to have done the homework themselves.

    If the candidate makes mistakes or gives an imperfect solution, I try to gently guide them to where we need to be. I ask them to explain why they made decisions they did, any edge cases, and how to improve performance or scale it. I expect them to ask questions when something is vague (and usually something in my problem can be interpreted one or two ways for this reason) because these are things they will encounter working with stakeholders and other engineers. If they can’t do that live and on-the-fly, they’re probably not for us. I fully expect nerves to be a factor and account for that; we’re all nervous in interviews.


  • I didn’t like Lemmy at first, possibly because it had this weird auto-refresh thing and other issues. I found mbin instead and have been with it since. I may check out Piefed at some point. My instance recently has been struggling with donations and I can’t really help right now.

    I don’t use an app for mbin, just browser. The one thing I will say is that images are broken on mobile (Android) as there is no X to close the image, annoyingly.







  • One of my teammates used AI (our company heavily encourages it) to write code. It did what it was supposed to and the tests passed, but it was the most ugly and unmaintainable shit ever. For one example, I don’t want to have to untangle a for i = 0; i++; i <= len(foo) {} that has multiple ifs inside that separately increment and decrement the loop counter i when trying to troubleshoot an issue.