51
10

I'm currently a first-time Tech Lead at about the 1.5 year mark of a 20 person bootstrapped start, with our tech team being 6 people excluding myself (1 Flutter Dev, 2 Server-side Devs, 2 Web Devs, and 1 QA).

The startup is a fairly ambitious product that has many different technological pieces that all tie into each other, and mostly has each individual developer working on their "own" project. It feels much less of a team, as it does just people working on their own sections of a the product (we have a mobile app project, 2 web projects, and a server-side automation project going on concurrently right now).

Overall, I've been very pleased and impressed with how much we've been able to get done over the last 1.5 years since I've joined, the business team seems to be very pleased in general with our ability to ship.

I'm starting to feel burned out trying to keep on top of it all, while managing expectations and the literally daily discussion of roadmaps +6 months away. Although we haven't had turnover issues or anything like that, I feel like I haven't been able to be as good of a manager to my people as I would like to be (giving detailed thought into their career progress and detailed advice on how they could continue to improve the day-to-day).

I've tried to implement the "Shape Up" method a couple of times, but its always immediately turned into a tool to plan a year out, with detailed features in each "iteration". They've been open to the idea of "not everything they plan for will make it into the iteration", but that just means that it gets moved to the next iteration, which kind of defeats the purpose.

I would say my main strength (and interest) is being able to actually deliver a project at a time. I think I could be extremely effective on a small feature team. What stresses me out is feeling like I need to do that on all 4 projects concurrently and the constant discussion with the business team about all of them, and any idea they have about them for the next 12 months.

  • If I'm being totally honest, I'm feeling like going back to being just a Senior Engineer would be perfect for me right now (but doesn't seem realistic from where I stand today)

I'm currently wondering if a Engineering Manager with project management skills would helpful to take that piece of it off of my plate.

  • My fear, with this, though is that the Engineering Manager would just become a 1-1 proxy and I'd still have to be managing most of it anyway

Thanks for any advice in advance!

52
40
submitted 1 year ago* (last edited 1 year ago) by hi65435@discuss.tchncs.de to c/experienced_devs@programming.dev

We're a very small team with little experience in hiring but got approval for a new engineer. Basically HR will look for people through the usual channels and I think we have a reasonably good job description. Unfortunately the coding challenge (a 30h+ take home) is atrociously difficult and doesn't really reflect what we do. On the other hand I think the false positive rate would be low. FWIW it's a Linux application and it might be difficult to only count on experience from the CV.

Any ideas how to build a good challenge from scratch and what time constraints are reasonable?

53
7

Hi everyone,

In a project involving Firebase and object types like Tickets, Schedules, and Timers, I want to structure my classes such that switching databases (potentially to MySQL) wouldn't require a complete rewrite.

Approach 1:

  • A DatabaseProxy interface with generic methods (e.g., createTicket, createTimer, etc.)
  • A FirebaseProxy class implementing the interface, with methods for each object type (e.g., createTicket, createTimer, etc.)
  • Manager classes for Tickets, Schedules, and Timers, that primarily use the FirebaseProxy for operations. This provides flexibility for processing input/output, but most of the time the manager classes will just be calling methods on the Proxy directly.

Approach 2:

  • A DatabaseProxy interface with the most basic CRUD methods (create, read, update, delete).
  • A FirebaseProxy class implementing the interface.
  • Manager classes for Tickets, Schedules, and Timers, calling FirebaseProxy with parameters like update(collection, ticket) and implementing createTimer, createTicket, etc.

I like the second approach in theory, but what I'm worried about is whether the separation is too low level. What happens if the database I switch to changes schema such that taking in an object and a collection name isn't good enough anymore? For example, will there be concerns if I switch between Vector, NoSQL, and SQL?

Any opinions are appreciated!

54
19

I am normally a helpful person who dives in to help, but when it comes from above that I'll be switching teams with no warning, it robs me of my autonomy, my investment in my team and product, and makes me feel like even more of a cog. Yes, it's good to broaden my experience, and maybe if it was handled better it would have felt better. But my job isn't just coding, it's social skills and research and all of that. Especially in the remote environment, it's hard. So this does feel bad.

Our product team failed to pull together a clear path forward, so I understand why this is being done, but it is still alienating. Is this a normal thing to expect in future roles?

55
32

Curious to know how many people do zero-downtime deployment of backend code and how many people regularly take their service down, even if very briefly, to roll out new code.

Zero-downtime deployment is valuable in some applications and a complete waste of effort in others, of course, but that doesn't mean people do it when they should and skip it when it's not useful.

56
19

I'm looking at starting a service that involves hosting a lot of LLM models, which are often going to be 16GB+ (compressed). I did a bit of searching for cloud storage providers with cheap egress, and the cheapest I could find is $0.01 per GB, which would still be $0.16+ per download.

How do sites like Huggingface or CivitAI do it? Lots of VC funding?

57
10

I'm looking to spin up a new personal website, after leaving my current one languishing for 5 years without an update. I built that one mainly to facilitate my transition from WordPress development to modern SPA engineering, but it's kind of onerous to update since it's not backed by a CMS, and the codebase is... well, it's a first-attempt SPA built by a WordPress dev. :)

The new one will serve a similar purpose (I'm looking to transition into gamedev), but the challenges are a little different this time around — all of my work over the past five years has been on internal or otherwise not publicly available software, so I can't really show a thumbnail collage of my recent projects. All of my personal, gamedev-related projects are in various states of unreleased or unfinished WIP, and they're all individual features or systems intended to slot into a bigger project that doesn't exist yet, so I also can't really throw any playable demos up on itch.io or whatever.

So I'm thinking that the best way to showcase my knowledge/skillset this time around would be with a blog, where I can talk about some of the nascent projects I've been working on, the challenges I've encountered and how I'm approaching them, etc.

However, it's been a long time since I've published an actual website, so to get started I'm trying to get acquainted with what the ecosystem looks like for this sort of thing in 2023. All of my domains are currently at Google, so I'm thinking about giving SquareSpace a try (since they've recently purchased Google Domains).

The pros for SquareSpace, as I see it currently:

  • Pretty painless initial setup (besides agonizing over which template to use)
  • Some flexibility to grow into it and customize to my needs over time, though I haven't deeply investigated this yet
  • Zero time spent thinking about hosting or server-side whatever

The big con:

  • Totally closed-source, walled-garden type of ecosystem, so if I wanted to migrate eventually I would need to mostly start over from scratch.

I'm tempted to spin up something fully custom, so I can choose my own tech stack from top to bottom. But the major downside of that is that I would need to spin up something fully custom and decide on a tech stack from top to bottom. As fun as that sounds, I kind of doubt it would be the most valuable use of my time right now. It would also force me to think about things like hosting and server configuration which I have no enthusiasm for. I'd really like to get something off the ground within the next few days, so I can start writing content this week.

Any recommendations? Options I haven't considered? Good or bad experiences to share? Any success/horror stories about SquareSpace in particular?

58
31

I generally don't like "listicles", especially ones that try to make you feel bad by suggesting that you "need" these skills as a senior engineer.

However, I do find this list valuable because it serves as a self-reflection tool.

Here are some areas I am pretty weak in:

  • How to write a design doc, take feedback, and drive it to resolution, in a reasonable period of time
  • How to convince management that they need to invest in a non-trivial technical project
  • How to repeat yourself enough that people start to listen

Anything here resonate with y'all?

59
16

We are considering using C4 for our architecture diagrams. Many diagramming tools (including Structurizr which was developed specifically for it) support C4. I wonder if there are others that use it and I would like to hear your experiences.

My initial assessment is as follows:

Pros

  • Diagram as code is a great way to keep things open to change.
  • It allows for better versioning
  • It enforces semantics into the diagrams. Instead of just thinking in terms of boxes and arrows, one need to dig deeper

Cons

  • It has a relative steep learning curve (one needs to study the DSL even though the end result is just boxes and arrows)
  • The tooling is not perfect. One needs to run a docker container to be able to navigate within the diagram (solution: there is also a SaaS offering)
  • Its view of architecture is somewhat limiting. It doesn't seem to be catered for augmenting the diagrams with other forms of diagrams (flowcharts, etc.) or text.
60
17

I'm a new grad who started at one of the Big Tech companies this past year. Been recently notified that I'm in danger of being placed under PIP due to underperformance, which I thought was fair due to extenuating familial circumstances. I'm personally feeling despair in being capable or being able to stay in the tech industry considering my lack of ability or general aptitude.

61
7
submitted 1 year ago* (last edited 1 year ago) by tyg13@programming.dev to c/experienced_devs@programming.dev

I'll try to make the context quick. I have been employed as a compiler engineer at a large company in SV (not FAANG) for about a year now. Previously, I've held jobs at a couple companies at the junior level (~4 years total). About 5 years ago, I completed a bachelor's degree in Mathematics at a state university.

I am now feeling that this education was insufficient: the subject matter was not really related to my eventual career path, and the experience was overall incredibly mediocre. To put it quantitatively, my school is not even in the top 100 engineering schools in the country. And, as the title implies, I never received a masters degree.

My coworkers all have masters degrees and this has led to a pervasive feeling of imposter syndrome. I'm also worried about my future employment prospects: while I am not searching at the moment, I am worried that when I decide to do so, most of my competition will also have masters degrees. My company has recently struggled to hire compiler engineers, and I can't help but feel like I was able to get in with a lesser degree and experience as a compromise against a tough hiring market. I don't know if I'll be afforded that same chance in the future.

I am now in a much better position to pursue a master's, and since I live in SV, I also have the possibility of pursuing a master's at a high-quality school without needing to relocate. I am trying to determine if this would be worth it. Some pros: increased networking opportunities, a more prestigious resume, possibilities for research/skill growth. Some cons: likely expensive, could be difficult to get into a good school, skill growth might not be as much as I'd like.

Some part of me thinks it's a better idea to continue working on side-projects to improve my skills on my own. I have several "impressive" projects (e.g. compiler, OS kernel, GB emulator) that were instrumental in me getting my foot in the door, here and at previous companies, that I still actively work on. But I can't shake the feeling that an MS from a top school (assuming I could get in) would open doors to places I haven't yet been able to crack (mostly FAANG). I also think it could improve my chances for promotion within my current org.

Anyways, if you've made it to the end, thanks a lot for reading. Any response is appreciated.

62
52
How screwed am I? (programming.dev)

I started working for a big corporation about six months ago. Turns out a few months before I started there was a new CTO hired from a startup. This CTO has been on a hiring spree and basically hired all of the technical staff of the startup he came from (to the point that they're suing the company I work for).

All these people from the startup have their own office, away from all the corporate offices. And they're writing something (that they won't reveal) in what they refer to as their bunker. The best we can gather is that they're coming up with modern equivalents of all the backend services. This would mean that everything the devs do in the office I work in will be redundant.

I have the feeling that within a year or so (maybe less) there'll be mass layoffs of all the existing devs. Am I being paranoid?

63
16

Hello everyone, I've been starting up a computer research laboratory and have been struggling to get enterprise clients for custom dev services or contract work. I've tried cold emailing, calling, and LinkedIn but haven't had any luck. Are there any specific communities or networks where large companies look for people to do this kind of work?

64
-3
submitted 1 year ago* (last edited 1 year ago) by JokersPistol@programming.dev to c/experienced_devs@programming.dev

Which one is easier to develop and work with (which saves the most time)? Which one would you go for? The name of the API represents its true purpose in this case by the way, createOrUpdate creates or updates the passed in meeting and create just creates the meeting. I will be the only one working on this project for now, although obviously, I would like others to work on it with me eventually.

65
14
submitted 1 year ago* (last edited 1 year ago) by sunshine12873@programming.dev to c/experienced_devs@programming.dev

I am considering taking a contract software engineering role with a company I am excited about. We are in the final stages of the interview process, and they are pressuring me for a rate. When they first asked me for a rate, I asked whether they have a typical rate that they pay contractors and they said yes, "based on experience", but did not disclose the rate. I have no idea how they are intending to level me and am confused as to why they are asking me for my rate if they have a standard contractor rate. Would welcome any advice about how to proceed.

Edit: to clarify, I'd like help with how to ask them to tell me their usual contractor rate

66
27
submitted 1 year ago* (last edited 1 year ago) by fololzl@programming.dev to c/experienced_devs@programming.dev

Prologue: Long time Reddit subscriber, this Lemmy thing seems neat. I will probably ditch Reddit completely. Hi everyone!

tldr; joined new team two performance review cycles ago. Reorg before I joined, now have inexperienced manager who is different than hiring manager. Things went downhill after a while, probably due to personal issues, now my job is at risk. Another reorg with new manager happening soon, trying to save myself from layoff until then and trying to save my rep. Wondering how to do this best.

67
20

I am an experienced developer, but not an experienced manager. I'd prefer if organizing tasks was not my responsibility, but I work at a small company and no one else is inclined to do it. How do you organize miscellaneous tasks when using a task management system such as Jira? We're using GitLab, but it has the same basic features, such as epics, milestones, tasks, and subtasks.

I don't want to have miscellaneous tasks floating around in the ether, because things like that tend to get lost. But an epic is supposed to have a well-defined end goal, right? A good epic is something like "Implement this complex feature" or "Reach this level of maturity" - not "Miscellaneous stuff".

The majority of the work we do fits fairly clearly into specific goals, such as "Release the next version of feature." But what about bug fixes and other random improvements and miscellaneous tasks? How do you keep those organized?

68
17

I haven’t been able to find one and I think it’s important.

Seeing how the UI, Backend, databases, and the fedeverse interact with each other can really help developers see the big picture. It can help remove barriers to entry, give people an idea on where to start for contributions.

If there isn’t one let’s create one. Who ever knows the flow and architecture of this app, please drop a line in the comments.

69
47

I trialed GitHub Copilot and used ChatGPT for a bit, but recently I found myself using them less and less.

I've found them valuable when doing something new(at least to me), but for most of my day-to-day it seems to have lost it's luster.

70
54

In the past, I've done hybrid work, I'd finish all the easy stuff at home and keep the hard stuff for the office, and I'd go in for a couple of days to finish it all.

I got a really good offer from a different company, and I've taken it, but unfortunately, this company only does remote work and does not provide you with any equipment. Problem is that I have a powerful desktop but no laptop, which means my options are either to buy my own laptop and work somewhere else when I need to get work done or make a partition/new user on my desktop that's strictly for work, but I am scared that its going to affect my productivity.

Any input or advice would be appreciated. Thank you.

71
28

What are some of your recommendations for books, videos, podcasts, or any other media that inspire and spark more passion for programming and computer science in general? I'm interested in hearing how these resources have helped you grow as a programmer.

72
14

Moving a legacy system from micro-services towards a new monolithic Elixir application

73
21
74
11

cross-posted from: https://lemmy.world/post/76533

One of the arguments made for Reddit's API changes is that they are now the go to place for LLM training data (e.g. for ChatGPT).

https://www.reddit.com/r/reddit/comments/145bram/addressing_the_community_about_changes_to_our_api/jnk9izp/?context=3

I haven't seen a whole lot of discussion around this and would like to hear people's opinions. Are you concerned about your posts being used for LLM training? Do you not care? Do you prefer that your comments are available to train open source LLMs?

(I will post my personal opinion in a comment so it can be up/down voted separately)

75
11
Advice for new engineers (programming.dev)
submitted 1 year ago* (last edited 1 year ago) by alphapro98@programming.dev to c/experienced_devs@programming.dev

Hi! I hope all is well. I am loving this instance and all the communities so far! As I am a new grad software engineer who is gonna start working in the next month, I was wondering if there are some tips, advice and some nuggets of wisdom you want to pass to this clueless person making this post lmao.

view more: ‹ prev next ›

Experienced Devs

3870 readers
2 users here now

A community for discussion amongst professional software developers.

Posts should be relevant to those well into their careers.

For those looking to break into the industry, are hustling for their first job, or have just started their career and are looking for advice, check out:

founded 1 year ago
MODERATORS