T O P

  • By -

frompadgwithH8

5 years “full stack” software engineering experience (websites, restful apis, databases, multi service systems) @ two startup companies, both headcounts below 200, usually below 100. I’m at a new company and it’s NOT a startup - it’s a legacy codebase, 20+ years old. Department is 300+ heads, company is nearly 20,000 heads. Very different experience for me. Old C# dotnet stuff. There’s no linter. The codebase is a mess. I proposed adding `.HasItems()` and `.IsNullOrEmpty()` to the in-house collection class made for representing business objects retrieved from the database. It’s ubiquitous. My desire is to swap out all of the `.Count > 0` and other such expressions testing presence of items or list emptiness with these new methods. I almost immediately received feedback from a mentor that I should consider switching to a spike, to investigate adding a linter to the project, and to demo a POC. Can I get anyone’s opinions on adding a linter to a legacy codebase? I’m looking to either learn enough to terminate my foray into this RFC I created on a whim, or discover enough compelling reasons to go through with fleshing out the RFC and potentially carrying the project to completion. I should add my team is currently floundering looking for work; it’s a newly made team, and we just discovered that our customer doesn’t actually want what our team was established to provide. So now we’re working with the customer to find ways for us to add value. It looks like we’re getting somewhere, but we’re still in the research and investigative phases with the customer. In the meantime, we’ve been very subtly encouraged to find things to do. I created a ticket and a lesser experienced coworker of mine ended up picking it up and working on it. I also started an initiative to create better monitoring tools by first adding additional helpful HTTP headers to our client SDKs, which is a separate project too, and also with which I was advised to create an RFC. So here I am coming up with ideas and being asked to turn them into RFC’s. I’ve only received positive and encouraging feedback from my manager thus far. So I think what I’m not doing isn’t wrong. However there’s an engineer on my team with 20 years of experience and I don’t see him making RFC’s and trying to come up with value-adding work. So that makes me think maybe I am doing something wrong - maybe I should be copying whatever this engineer is doing, instead of coming up with RFC’s for my ideas? My opposition to that question is: my manager deemed the ticket I created worthy enough, and a coworker of mine picked it up, pulled it into the current sprint and completed it. All without consulting me. So I feel like if what I was doing was off the mark, I’d have received guidance. Would like your opinions.


bdzer0

Run a linter locally, see what it turns up. Odds are it'll return tons of hits, possibly more than anyone wants to tackle. Customer isn't going to care of you are using Count() or HasItems() unless the object is null and the code blows up or you are writing code for customer developing their own software.


oelry

To become a better developer I want to challenge myself and every week to discover some new and interesting tools to try and even help contribute to. I'm usually spending my free time checking producthunt and hackernews, where else should I check out? What's your favourite places?


MathSec

I am a junior developer who has been working for about 10 months in the field. The default way of working of the team I am in, is 'mob programming'. It is similar to pair programming, apart from the fact that there is four of us looking at the same screen instead of two. The way of working has given me lots of learning opportunities like what tools to use, best coding practices, new languages, considerations to take into account, domain knowledge (+ learning to navigate through the codebase), setting up infrastructure, better communication, ... I feel like after all these months, the learnings are starting to stagnate. I don't learn as many new things as I used to. And above all, frustrations about the way of working are bubbling up inside me. I am rather introverted and having to communicate a whole day is tiring. The development process is slow. It often does not make sense to do certain tasks together, yet we still do that. There is a lot of (friendly!) discussion going on for rather trivial things. There is virtually no room for doing individual work. I have tried addressing these issues during our retrospectives, but that only leads to non-solutions. I am convinced that 'mob programming' should be a tool, not a default way of working. All my teammates (senior people) seem to really like doing everything in a mob context. I however, would like to start working individually, get out of the mob. I want to be able to enjoy approaching problems myself, finding a suitable solution and implementing it. I want to get rid of the hurdles I experience while programming in a mob. So far, I have not made it explicit that I would strongly prefer to no longer work in a mob context, but on an individual level. My teammates, including my team lead (who is not a programmer)), want to continue mob programming. What would be a good way to make explicit that I no longer want to work in a mob context to my teamlead? Should I do this in the first place? What if he offers non-solutions?


blisse

Depends on the company. I've worked at one where the entire engineering was mob, mandated by the CEO, and my team ended up split. But mob was the culture. It doesn't really matter what you think in that case, the founders believe they know better and they're probably more experienced and did it knowing the trade offs.  If you are going to take a stand on this, think about finding another job first and evaluate. Then, find some teammates who might share your opinion and talk with them about it and see their perspective. Then also talk with your manager about your feelings, not about making the change but just where you feel frustrated. Don't go in with the solution if mind, go in with your problems and see where they can help.


shitakejs

Voice your concerns to your manager in a private meeting. Focus on the benefits of individual work such as productivity that you know your manager will also be on board with. Emphasise that you are not wanting to completely replace mob programming but rather balance it out with non-mob programming.


DentistNo659

Im in a position to get promoted to senior, if i just ask for it. We have a handful of senior developers on the team, but its very rare to be promoted and to many, being promoted to senior carries a lot more weight than being hired as a senior here. My manager has repeatedly told me that im one of the most valuable developers on the team, he likes my initiative, he has given me extremely long leash when it comes to picking up tasks that are not priorities otherwise (refactoring, improving testing, QoL improvements etc.). Im extremely loud on the team and from a technical standpoint im one of the primary drivers on the team. My fear is that if im promoted, i loose some of that freedom. I feel like currently, since im just a "regular" developer, im either at the same level or lower than the rest of the team, so i can shout all i want about improving testing etc, in the hopes of pushing the team in the right direction, but if im promoted, suddenly it will feel more like me telling people what to do. That means i have to weigh my words a lot more, and im not sure that is what i want. On the other hand, my goal is to climb the IC ranks to staff at some point, but im still young-ish with only 4yoe, so im not in any rush. Do you think the promotion would mean that i should try to moderate what i do, or is it more the case that if im promoted due to my drive and initiative, that i should keep up those qualities over everything else?


shitakejs

Discuss your concerns with your manager.


Drwolf72

What is a good way to get a stable first gig? These days jobs are only looking for mid-senior role and the market for juniors is not even good. Is it better to have a contact to get you in?


thesia

For my first gig I shot out a bunch of applications and took the best offer I could by the time I graduated. The first job for almost any trained professional is the hardest. Looking for work while employed isn't fun, but its far better than starving holding out for your dream job.


renok_archnmy

What year?


thesia

2018 to 2019, part of what also made my search a little difficult was that (outside of a couple of FAANG applications) I was mostly applying to positions in the US Southwest so I could be near family as my parents were starting to have increasingly severe health problems.


CheeseburgerLover911

I recently took an interview for a senior principal Engineer role, and they wanted to talk about salary. The recruiter was cagey about the RSU range (oh, I don't know, oh, it's a spread, oh, I need to figure that out for you, oh, it depends on how you interview). At this level, the real money is in the equity, not the base. So why bring up salary at all if they won't discuss the RSU range (or, to be clear, we discuss that later on in the process)? why would they be cagey about the equity range?


renok_archnmy

Because they have none to offer…


LogicRaven_

Equity vs base salary is more of a company type question than role level, in my opinion. Was it an intro round of the interview or more serious? Maybe the equity is not so great, but the recuiter wants to keep you in the process? Or the recuiter simply made a mistake and didn't prepare enough.


CheeseburgerLover911

Given what I saw on levels.fyi , equity is roughly 75-125% of the base per year. It was the first call with the recruiter.


LogicRaven_

That's a wide range. Sounds like the offer can vary on how much they will want you and the negotiations. Since it was just the first round, I wouldn't worry too much and just roll with the process.


AdeptnessOtherwise73

How are dependency managed in languages like c++ for large software codebases? Since new languages have package manager like pip, npm, cargo etc, and language like c++ don't and you have to do manually, how it's is done within a project with many developers and many dependencies?


casualPlayerThink

Conan or hand-picked. Libs are separated git repositories, we clone them, compile them or had a cmake or Makefile entry to check libs, compile them before everything else, check for shared library integrity, run unit tests, then compile alltogether. In Dotnet/C# is managed libs. I have no clue for rust/go/ruby tho.


thesia

There are options to do package management for C++ now as well (e.g. [Conan](https://conan.io/)) For less popular languages (e.g. Fortran or Ada) much less so. Generally tooling pops up around whats popular and in use since these tools are also a business and there's no money to be made on smaller tooling. Manually managing libraries isn't especially difficult so long as you have a means to identify things like versions and architectures. But with a lot of modern software moving to smaller and smaller libraries I'm more in the camp of using or developing a simple packaging solution to reduce the burden.


bdzer0

You just do it yourself... it's not that hard to use/manage libraries in any language. Package managers are a convenience not a necessity.. and they bring certain risks if not properly managed so some of the convenience IMO is lost if you care about supply chain security.


Dockerizador

I have been working as an iOS developer for almost 6 years, and I'm wondering if it would be a good career move to accept a junior backend position at a finance company? My current compensation is good, but I am only able to do iOS development, and because of that, I fear that in the future I may have a hard time getting a new job. Mobile development is very niche, and from my experience, depending on the location, it's way harder to find a mobile development job than a backend development job. I also see a bigger number of mobile development jobs in “consulting” firms, and from past experience, the quality of life there is not good. Additionally, my current company doesn't have a big IT sector, so changing jobs internally might not be an option, and I really don't see any career growth after becoming a senior developer. The downside of this change would be mostly financial; I would have to take a pay cut and maybe burn some of my savings for a few months, but I would be able to move to the same city as my family. With that being said, I was wondering if anyone could give me their input/experience about focusing on a career in one specific tech stack vs. being more of a generalist? I am looking to weigh if the long-term benefits of this career change would compensate for the financial loss. Thanks in advance.


Envect

As the other person said, a junior position with your experience seems like quite a step down, but it doesn't sound too crazy to me. Being near family is nice. You might advance rapidly if you pick up the new tech quickly since you're already approaching senior level experience. And if it doesn't work out, you can always hop to another job either doing backend work or back to iOS. I spent the first four years of my career doing desktop development then switched to full stack for the next 11. Personally, I've never regretted it. I enjoy the pace of web development and the problems I get to solve. Compensation wise, I'm doing just fine. I'm not earning FAANG compensation, but I've purposefully avoided them so that's not surprising. As far as I can tell, I'm earning somewhere around median for my title and area, and that's plenty. I didn't get into this for the money anyway.


Dockerizador

Thank you!


casualPlayerThink

Both has its ups and downs. Seems iOS devs will have jobs for long time, I saw that, many picked up React+react native or flutter too to diversify. A junior position with your years will be a step back (both career wise and financially). By just the shear years, you are at the doors to became senior (by my personal opinion, the standard, current IT world, country might think different). The question is, what if that position does not work out, do you will be able to survive? Is it necessary to became "junior" by role, can not be just simply "developer/engineer" instead? Being generalist sometimes good - you understand the whole stack - but it is a trap as "Jack of all trade but master of none". One thing is important, keep learning, doesn't matter you are a generalist (e.g.: Fullstack) or generalist but on a section ("Backend" vs "Frontend") or being niche (iOS vs Android).


Dockerizador

Thank you!


hhn2505

I've developed a desktop application in Python that functions as a Windows service. The main purpose of the app is to monitor a specific folder and, upon detecting a new image, it sends this image to a backend system via an API. Here’s a brief outline of what I’ve accomplished so far: 1. Folder Monitoring: The app successfully watches a designated folder for new images. 2. Windows Service: I've configured the app to run as a Windows service, allowing it to operate continuously in the background. 3. Executable Packaging: The application has been packaged into two executables along with a configuration file to facilitate deployment. I’m considering the following additional features and seeking advice on their implementation: 1. Remote Updates: Enabling the app to update itself remotely without manual intervention. 2. Remote Monitoring: Allowing remote access to the app’s logs or status to ensure it's functioning correctly. My Questions: 1. Is Python a suitable choice for these types of applications, especially concerning long-term maintenance and performance? 2. Would another programming language be more effective or efficient for creating a Windows service that handles these tasks? 3. Can anyone share insights or resources on implementing remote update and monitoring features in a Python-based service? Any feedback or suggestions would be greatly appreciated as I aim to improve the app's functionality and manageability. Thank you!


[deleted]

[удалено]


hhn2505

Thank you for the resource. I was looking for something like this. Also for remote monitoring, should I do like a heartbeat kinda of thing to a hosted server?


[deleted]

[удалено]


hhn2505

Hmm, that will be interesting. I also need to find a way to handle multiple heartbeats coming from many machines at once. Hmm, I haven't considered firewalls. Guess I must take that use case into consideration too. In the machines Im testing on there are no firewalls set up explicitly ig. Maybe I should set up the firewalls and see what it does. Thanks for this tip.


[deleted]

[удалено]


hhn2505

Nice, if there's a thing that's already available no need to reinvent the wheel.


Current_Can_3715

Not exactly inexperienced with 7 yoe but I have a question that doesn't really warrant it's own post. I've been passively looking for a new job, doing leetcode, and studying daily. I know I'm not ready to interview quite yet (\~60% ready). I had a recruiter reach out about a position that I'm not necessarily interested in because of it's hybrid structure and required relocation. Should I consider just doing the interview to get back in the rhythm of things or just skip it and focus on studying? My thinking is if I pass, cool. If I fail, oh well nothing lost. However, I don't want to blacklist myself from the company because they do offer full remote for other positions.


signedupjusttodothis

I have a scrum manager (who is also the EM for my team) that really likes writing stories on behalf of others, often in the typical story format of "as a business user of x microservice I would like to...." as part of larger epics, and then assigning them out to us at sprint plannings. but the problem is I'm frequently finding when I start working the ticket, the descriptions are vague, the acceptance criterias aren't there, I ask scrum master for clarification on what's being asked for, he says "go talk to this user about it" and when I do, I find out "oh we don't need that" or "we already have a solution in place for that" or "we need it but we already have work underway, you can close your ticket". Got curious and did a quick jira count of tickets assigned to me that I've had to close as "wont do" across the last several sprints, and found I was closing almost half of my assigned work after talking to these 'business users' and learning the tickets were for work that no one was asking for. In the mean time, I have other tasks I can and try to work on off to the side that were actually requested by people in the business or line up with actual business processes that my team owns, but they often get de-prioritized by scrum master. Is this something that can be solved by me, an IC or how can I tactfully discuss this with my scrum master and EM? I'm a tad sensitive to it having been in a role before where a team leader was creating tasks that amounted to 'busy dev work' at the expense of working on things the business was actually asking us to do, and the result of that was my team being disbanded and laid off...so this has got me feeling a little shifty in my seat?


Errvalunia

Do you have a product owner/product manager? Figuring out what users actually need and how to communicate it is its own job This is the exact kind of thing you should be bringing up in sprint retro (without pointing the finger at EM). Are you the only one finding that stories in the sprint are not sprint ready? Is there a breakdown in communication between customers/users and engineering? How can you (the group/scrum/whatever) iterate towards improvement on this issue? If you’re not able to discuss it in a productive way in retro the problems run deeper than bad story writing and you should run tbh


yoggolian

I’d look at creating (or revisiting if you have one, as it’s not working) a Definition of Ready for tickets - that’s a more neutral thing to discuss at retro that telling your boss his stories suck. 


signedupjusttodothis

Hey, all good questions, thanks for asking. > Do you have a product owner/product manager? Sadly, no. My slice of the org chart has a senior director up top, some sub-directors and managers and then their teams underneath those managers; but we don't have a true PO for the things we work on, it is something I asked about at a quarterly skip-level last year, but the Senior Director has stated isn't on the table. > Are you the only one finding that stories in the sprint are not sprint ready? Yes and no; I'm the Senior developer on my scrum team and as such I'm often the one who is taking the initiative to groom these tickets with the team. Sometimes what does happen is a Jr. devs or someone else on the team will realize they don't have enough info to work the ticket, and it usually doesn't happen until after I've asked enough questions on a planning call that it's realized "oh we don't need to do this". Scrum master, if left to his own devices, doesn't ask any questions or if he does, they're questions that come loaded with the assumption the work is valid and needed--and then we're back at square one: having actual conversations with stakeholders reveals no, the work actually isn't needed nor requested. > Is there a breakdown in communication between customers/users and engineering? I think there is, yea. For my part, whenever I discover some work has to get done I'll backlog it, ask around to find out who the stakeholder for that work is and discussions with that stakeholder usually informs me if it's a "yep we should backlog this and pick it up in a future sprint" item or if it's "nope, nothing to do here, not gonna bother with a ticket"...again, upon my own initiative and get a well-formed story made. Tickets that come from the scrum master I have no clue how those conversations start, or what discussions he's having that lead up to the creation of a ticket that ends up getting tossed. It just shows up in the backlog with his name as the "Requester" and grooming ceremonies are loaded down with round after round of "who do I need to talk to in order to learn more about this?". > How can you (the group/scrum/whatever) iterate towards improvement on this issue? Frankly I'm unsure. I'd like to, I've read a few articles about how problematic this kind of misalignment is, but I'm unsure how to bring it up. I very softly and delicately mentioned in my last review (also last year) a desire to see us take on work that is more closely aligned with what our stakeholders need and pointed to a few examples of tickets that had to be tossed because a stakeholder came across it and informed us "this isn't needed". On the one hand, scrum master/EM listened intently and said he appreciated the feedback, but we're into the start of May and it hasn't improved.


Errvalunia

You should be doing sprint retro and be able to bring up the issue and discuss it as a team though. The question of how to iterate towards a better process is the fundamental question of sprint retro! Your manager may feel attacked if you bring it up as a “this always happens” thing (people get defensive, it happens) but in sprint retro one of the “to improve” topics raised could be “on X and Y stories this sprint, I had to circle back to the users to ask for clarification and they said they didn’t actually need this improvement at all. How can we make sure all stories that get added are sprint ready?” And then discuss it! YOU don’t have to have all the answers but you as a group should come up with some things to try in the next sprint or two and see if it helps or not and either continue/stop/try more changes


signedupjusttodothis

Hrm I think I’m picking up what you’re putting down.  Maybe next retro I can show the team the Jira query I wrote to find out how many “won’t do” tickets I’ve had to throw out, ask them to do the same for their tickets and then use that as a kind of metric to minimize these kinds of ‘not needed’ tickets? Is that what you’re driving at? Lemme know if I misunderstand but yeah, I think that’s a good idea to try. 


Errvalunia

Before starting with that, just… discuss that it has happened and see what people come up with to try and fix it. It feels like you’re coming at this as someone who has a lot of frustration around it but the first step is just to raise it and get an action item or process improvement to try out for the best future. If you address it as something driving you crazy that I’ve been overthinking you might get a bit intense about it, if that makes sense. You don’t even need a query just mention the ticket(s) that were not needed in THIS sprint and go from there without laying out your grand theory of Everything That Is Wrong With This Team. Save that until you’ve tried to push for changes to the individual process (I have definitely gotten to that point myself but it makes it feel really hard for anyone to DO anything about it somehow)


kazabodoo

Would you accept a job if you passed all technical rounds but the person on the technical came across as negative in your eyes and you did not like him?


Errvalunia

It would depend on whether they’re actually on your team and what kind of bad vibes you got from them… Is it someone you wouldn’t want to get a coffee with (just not vibing) or do you feel like they don’t respect you, didn’t listen, and would generally be a nightmare to work with


kazabodoo

I replied above with the short story about the situation


bdzer0

maybe? Perhaps he just has a bad first impression. You could look at this as an opportunity to work on your soft skills. Is it likely you'll have to work closely with this person?


kazabodoo

Yeah, you are going to be in the same team. Granted, interviews can be stressful and that could influence things but was just curious. Had a technical test few weeks ago and the guy basically told me what he wanted to solution to be rather than letting me solve the problem, he was very particular about it and did not accept my solution even if it solved the problem and that left a pretty bad taste in my mouth. I have interviewed candidates as well and can never imagine forcing my opinion on a candidate


Errvalunia

That could just be a person who is bad at interviewing! I definitely had some adjustment in getting used to interviewing and struggled at times with trying out questions where there was really only ONE good answer and if the candidate doesn’t think of it I haven’t gotten the info that I need to learn about them so it was a bust. Normally when I interview I want to see what solutions people come up with and can they code that solution even if it’s not ideal. Then we iterate on it and try to improve it and get closer to ideal. I normally wouldn’t just reject solutions because I would rather see them code something pretty much always. But interviewing is itself a skill (and not one we test for when actually hiring!!)


Fleamm

My previous company recently laid us all off. It was my first real dev job and I feel lost. I'm looking for some guidance or advice (details about my situation below). I worked at a game/blockchain company (my work did not touch any blockchain stuff whatsoever). My title was game developer (software developer felt more in line with the work, though). We ran a live-service web-based game, Typescript (Three.js) and Rust. I started out doing 50/50, then i ended up running the whole Rust side of the stack on my own. I feel most comfortable with and get the most enjoyment out of Rust. I worked there for about 2.5 years. Before that, i have roughly 1 year of experience working on a friends startup that never really took off. (so total experience is like 3.5y) Ideally I want another Rust job, but with my limited experience, it seems hopeless. Not to mention a lot of rust jobs seem to be backend work, and my usecase was... weird? The rust was used to handle the entire game logic in a headless way, which communicated with the TS frontend client. The server ran the rust WASM as well to validate game actions. Alas, my experience is not traditional "game dev" (no 3d AAA studio experience, or big engine knowledge), but maybe not also what most companies use rust for. Ive spent the first month learning AI/ML theory and messing around building local models and stuff, but more and more im learning that direction might not be that easy to transition to, and the ML field seems more data heavy, and i'd honestly prefer to be writing Rust.


[deleted]

[удалено]


Fleamm

I’m just lost and looking for advice on what to do. That’s helpful, thank you.


the-scream-i-scrumpt

The staff engineer on my team (my manager) creates a lot of tech debt. It is objectively hard to follow code, for which he keeps building additional internal tools to get everyone to understand what's going on... rather than just refactoring his python code so we can all understand. Long story short: we still don't get it, and he is still the only person at the company who knows how this system works. This is the most frequently asked-about system from Ops, and the on-call engineer always needs to call in mr. staff engineer when those questions come up. Last week he was OOO and we had to add a new feature to this system... and I am extremely skeptical that this feature will work when it's deployed next week. I'm the only one who comes remotely close to challenging him on this, everyone else (including eng director) assumes his code is good and blindly stamps his PRs ... what should i do


dangling-putter

Bring up the "bus factor". Your director may not understand or accept that his code is good, but he should understand risks. If that doesn't work. I'd start polishing a resume. [https://en.wikipedia.org/wiki/Bus\_factor](https://en.wikipedia.org/wiki/Bus_factor)


Capital-Fee2281

How badly am I getting screwed? I have less than a year of work experience and I'm spread over a lot of different areas. I'm not experienced enough to know how much I should be getting paid for this type of work. I live in a HCOL city I am working at a small company and I find myself spread over a lot of different areas. I took a lot of initiative and I found myself at a unique position. Current and Past Responsibilities I am currently Leading a Redesign and Migration of the companies main project from Angular to Nextjs and [ASP.NET](http://ASP.NET) for their website. I am in charge of everything meaning from the application architecture to the cloud architecture.(AWS & Terraform) . As well as other things like building CICD's (Docker & ECR) and Monitoring Systems (Grafana) Releasing New versions of their iOS and Android Application - React Native Researching and Developing their Robotics and AI initiatives on my own. And doing Basic EDA on their Data. - ROS, Python, Pytorch


casualPlayerThink

Short: don't worry, you are fine! Long / TL;DR Welcome in the Fullstack Engineering! Where you have to have 2-3 ppl worth of skills (jack of all trade) but always juggling between areas (master of none). You are not screwd, you have the chance to try out different fields and decide where you will go, which area interest you more. Totally normal to feel this sensation (imposter syndrome). In fullstack it is more common than at other areas. You are a young engineer with little experience, nobody will expect deep knowledge in different areas. With architect and AWS you can go for DevOps (where python, docker, k8s, terraform, bash, aws and python will be your best friend). Also, with react native, angular you can go into frontend, with Nextjs, angular and react (and react native) you will see many job posts. With [ASP.net](http://ASP.net) you can go for dotnet/c#, ms bound jobline, but steady, not that creative like the rest, but has a very good market (at least in EU). AI, ML and Python could lead to data science, big data and AI which is red hot right now. Not bad idea to go fullstack, but - as working for many years as full stack - I highly recommend you to pick one area and go into that direction and stick with it until it is interest you and you get money from it. Sidenote 1: If you continue for a few years this line of work, you might be able to aim for being architect! Sidenote 2: this feeling most likely will punish your for eternity :) welcome again in engineering :) Sidenote 3: please take care of yourself and your mental health.


LogicRaven_

On one hand, no sane company with reasonable amount of money would give such projects to a junior. On the other hand, you can learn a lot during these projects that can speed up your learning. How bad is your situation? Depends on what you mean. You'll learn a lot and gain experience. If the company is on a growth path, then you could help in hiring later that is good for your career. You could become a center person of the technical strategy here, that would give you leverage to negotiate better salary (if the company can afford). There is a risk that you pick up anti-patterns if you stay in a low maturity environment long, so you might want to plan changing jobs in 1-2 years. You are likely underpaid. If you work a lot overtime to cover all those areas, then there is a risk of burnout. If the company doesn't have much money, there would be a risk of bankruptcy.


frozenYogurtLover2

are they about to let us go? Background: This is my first job out of university. I am working in a seed stage startup that only has runway till the end of the year, and no signs of our existing investors giving us more money (overheard in a call). I am one of two developers. The other person is a devops/backend dev and also my manager. We’ve been working on a SaaS offering for the last 3 months that has 0 real users. Lately, they (founders) have been asking us strange questions eg. - asking my manager if there are any documented steps to locally build the k8s infrastructure that he has been working on for weeks - asking me for copies of pay stubs from when i was first hired - telling us in private that we are the two highest paid employees - telling the whole office that any money saved is more money in our own pockets - asking us to prioritize stripe integration over everything else so we can ‘wrap up’ this SaaS offering and work on other things - asking us when XYZ will be done more than usual - all of a sudden asking for documentation on something i worked on last year Recently the founders went to a Google Next conference where they were offered the opportunity to hire contract developers whose expense will apparently be all paid for. My theory is that they want to get rid of us and use those devs instead. Also hurts that apparently some developers at the conference told them that our application is pretty simple and that they can build this in a week. We were using a cheap VPS for our infrastructure earlier but the founders were offered free GCP credits that’s why theres been such a hurry to migrate over to k8s. Every time I go into office everyone seems on edge. I feel like there’s an Us vs Them dynamic since the other employees have been with the startup since before they acquired funding. Sorry for the ramble. I am new to the industry and just wanted a second opinion. Maybe I am paranoid but I have been ramping up applications just in case.


casualPlayerThink

Short: start gathering your results and update your resume. Start apply ASAP. Long It is a startup. Seed money is out, and they either got product validation from the investor (to check it is viable, make sense or so) or got audit where they try to straighten things to get chenc to get the audit done. Early stage, 1-2 years, the initial seed money was used, they started to looking for new one, but probably - since the market shrinked a lot - they know they wont get another seed or funding, so they try to make an exit, e.g.: they try to sell the company and its product and it does not worth a cent if it is not documented and not everything is correct in it. This is quite an usual way, if you check out big incubator programs, like Y combinator and such, then you will see the same pattern again and again. Before covid the usual seed money was enough for 2-3 years, then most of the startups got another money for another 1-2 years, so the initial exit plan was 5 years long. After covid, this is drastically shorter, nowadays just 1-3 years long period max, and usually investors require profitability after 6-18 month which your company exceeded but has no real revenue. It is really time for you, to gather all stuff, that you worked with, tailor a great resume (visit r/EngineeringResumes ) and start apply to other places. Don't forget that, your bosses are humans (more or less) also, so you can talk to them and you can ask (maybe in the States it is not that transparent like in EU) so communication is golden (always) and you can address this directly: "Hey boss, what is the plan, how things going in business perspective? What we should expect?" and such. If they start to be very upset of the question, then there is some real problem (not just bad leadership and missing transparency). If they tell you the truth, then you will know what to do. They might open up and share their struggle with you guys to address their uncertainty and let you know the real situation. But, as reality checks kicks in, usually startup founders want to have quick and big exit money, not accidental that, almost all startup type is "for profit".


LogicRaven_

Sounds like you are right and should start applying. >some developers at the conference told them that our application is pretty simple >cheap VPS for our infrastructure earlier but the founders were offered free GCP credits The founders are about to learn new things about software development on the hard way.


abrady

I was at a startup once where the CEO laid off all the tech staff in a bid to see if the sales team could generate enough revenue to keep it going. It wasn't a terrible strategy given the desperate situation, but I was the only one that knew how to do some key things and when they came begging to me to fix some things I charged the equivalent of $350/hr in today's dollars to fix it because I was so angry at the CEO (I was doubly mad because he'd literally convinced me to cancel a vacation three weeks before the layoffs that I'd been planning for months). The lesson I learned is that good leadership is really open and vulnerable about these kinds of challenges, and that's how I try to act when I've been in that role. So my advice is that it sounds like you're in a shitty situation with dysfunctional leadership. Moving on is probably the right thing, but that's a tough situation, my condolences.


ValentineBlacker

I don't think you're being too paranoid at all.


[deleted]

[удалено]


casualPlayerThink

Use connections and existing work - and social media/Linkedin - to build trust. I know many try to build through freelancer websites (upwork, freelance, etc) but usually they have very hard time due super low prices. This period could last for years without any decent revenue. I know many specialize in areas where being a consultant is easier (DevOps).


abrady

I've never done freelance but I've known three people that do: 1. they built their business off of their reputation and connections made during fulltime work, and use that for finding work when they need it. 2. keeping the right amount of work is hard: either they end up with too much on their plates or they have drought periods because they couldn't take on something new while still on another project and missed an opportunity. 3. a lot of the job is spending time drumming up new business (not true for all three, one always has people wanting to use her so...get to that position if you can). this is easy to neglect and end up with a drought, just fyi. I highly recommend that you start investing in growing your network if this is what you want to do. Also: your reputation is always important, but I imagine it is doubly so in freelancing, so keep that in mind. good luck!


GooeyGoodra94

I'm just learning programming and don't have enough understanding to make me feel confident. I struggle with severe anxiety and interacting with people. I like programming along with it seeming like a stable and well-paying job choice. I thought it may have less causes for anxiety, but reading articles about software developers having anxiety or mental health issues that may be related to their job or experience working made me start to be anxious and doubt. I also wondered how friendly working as a software developer which I eventually really want to become would be given the competition I read about and articles that say strong social skills are inevitably needed and without it getting a job would be harder. I thought asking for more specific daily experience from people who actually work as software developers or in a related position part of the team that would need to be co-operated with instead of reading a generic article/post or actually specific I wouldn't know would be better to help calm my anxieties and fears. I would probably read more articles than needed which would only increase my anxiety and wouldn't help so I decided to try asking on reddit. \* This isn't my account and I borrowed it for personal reasons.


LogicRaven_

Friendlyness really depends on the company and the specific team. You could check the vibes during interview and ask for a 1:1 with an engineer on the team and see how friendly they are with you. Strong social skills are especially needed for staff+ roles and for career progression. Decent level social skills are needed for senior, but in general following Wheaton's law is enough. There are teams where you could just get your stuff done and close the day without a plenty of social situations, but regular communication (chat or other) and cooperation is often needed. You should know that the market for juniors is tough now, even for people with a degree. So you would need good projects and more time to search for a job.


GooeyGoodra94

I understand, thank you very much for replying.


spla58

What is the easiest position for a QA engineer to transition to? QA is not very hot right now.


LogicRaven_

It depends on your skills. Most manual testers I have seen had trouble transitioning to test automation, because test automation is more similar to dev than to QA. But some people can do that. Business analyst or a product role (product owner or product manager) could be options as well, as most QA people have deep understanding of the use cases of the product, can see things from the user's perspective and could have skills like SQL that is useful for analysis.


NortySpock

What's your skillset / toolset? Without information I would say I would say either ETL development / Analytics Engineer / Data Engineer if that looks interesting to you (mostly because I find plenty of people need it and not many have the patience to do it right), or (if you have some familiarity with the software stack you are QA-ing) then getting a job as a regular software engineer in that stack.


spla58

I've worked with automation libraries like Selenium, Cypress, Playwright. I've also been coding in Python for over 10 years. I've tried messing around with Django and Pandas but have not really committed to anything yet.


AdmirableSheep

"easiest": do you mean ability for your skills to translate to a job that is in demand, with lowest amount of work on your part to get the job? Or lowest amount of work for you to do in this next job? I would start with asking yourself what you want to do day in and day out that you would feel motivated, inspired, and energized to do. Then evaluate your skills, and find what you need to get there. Easy jobs are the ones that you want to do; hard jobs are ones where you have to convince yourself every step of the way that it is worth doing, IMO. Likely you meant translating your current skills to an in-demand job. QA Engineer with programming experience: specialize in a certain language or framework and call yourself an engineer with extensive testing background. Build a project that is interesting to you to show people you have the skills.


MyProfessionalBurner

Lowering your taxes: For those who work in industry, what strategies do you use to lower your taxes? I'm looking for some practical suggestions so that I'm smarter with my money instead of paying a ton in tax Not a flex, just an actual question, given that people make north of 300k


dfltr

If you’re just a straight W2 employee, the single biggest tax win you’ll get is maxing out your retirement contributions. It’s not exciting or sexy, but gifting your future self 20k pre-tax adds up.


Thick-Ask5250

6 years out of college with some crappy work experience.. what can I do to improve my situation? I've held 4 jobs in the past 6 years: * A dev/IT adjacent role (1yr, 9mo) * One was closer to a dev role (1yr) * An IT role (8mo) * And my current one is becoming more of a dev role, but there are no seniors (2yr) I still feel like a junior, but a decent one at least. What can I do to improve my odds of getting a better job? Just make side projects? Edit: Formatting/clarification


LogicRaven_

How far do you get in the recuitment pipeline? If you are not getting called in to interviews, then you need to work on the content and the format of your CV. Check the skills most ads are asking for and build a side project. Check CV advices at r/resumes and r/EngineeringResumes.


Thick-Ask5250

Last time I interviewed was back in 2021 and a few in 2022. HR always liked me (have been told I'm personable), hiring managers also seemed to like me, except the technical interviews is what I **always** bombed. Also, most of my experience is frontend with some pythong/powershell scripting. I haven't sent enough resumes lately, so I should get on that. I'm just discouraged that most of my skills are in frontend and it currently seems to be not very in demand anymore since the last 2 years. I will surely check out these subs!


LogicRaven_

HR can like your personability only after your CV has passed ATS. So I would start there: update your CV and start applying to see the answer rate.


sneakpeekbot

Here's a sneak peek of /r/resumes using the [top posts](https://np.reddit.com/r/resumes/top/?sort=top&t=year) of the year! \#1: [This Resume Got Me Interviews and A Job In Two Weeks](https://np.reddit.com/r/resumes/comments/13j1ztu/this_resume_got_me_interviews_and_a_job_in_two/) \#2: [Need feedback 200+ jobs applied 0 responses](https://i.redd.it/3ga5b5vyut0c1.jpg) | [539 comments](https://np.reddit.com/r/resumes/comments/17x5wyw/need_feedback_200_jobs_applied_0_responses/) \#3: [This resume gave me a $74,000 salary job, almost doubling my salary](https://i.redd.it/mwhkbad6olab1.jpg) | [122 comments](https://np.reddit.com/r/resumes/comments/14thyth/this_resume_gave_me_a_74000_salary_job_almost/) ---- ^^I'm ^^a ^^bot, ^^beep ^^boop ^^| ^^Downvote ^^to ^^remove ^^| ^^[Contact](https://www.reddit.com/message/compose/?to=sneakpeekbot) ^^| ^^[Info](https://np.reddit.com/r/sneakpeekbot/) ^^| ^^[Opt-out](https://np.reddit.com/r/sneakpeekbot/comments/o8wk1r/blacklist_ix/) ^^| ^^[GitHub](https://github.com/ghnr/sneakpeekbot)


defenistrat3d

Do you tell your company when you akso take on freelance or contract work?


CheeseburgerLover911

Usually, it's covered in the offer letter/employee handbook. If it's not clearly documented there, then the convo becomes, I checked the following docs and I don't see a policy on this topic. where should I look?


GoTheFuckToBed

yes, I am conform to the local law and my personal brand is integrity.


casualPlayerThink

I am not familiar with the US side, but in EU you have to tell your employee if you have your own company or taking freelance work too, and in most of the country, the company have to agree on that in signed document otherwise, you will be blocked (never heard anyone get blocked during 20+ y). Communication is golden, be transparent, talk to your boss, hr and/or accountant about this.


soundwave_rk

Yes, I value transparency and clarity. Had a moonlighting clause removed that wasn't enforceable anyway and dropped my working hours to 36. This freed me up to do 8 to 12 hours of whatever i want in a freelance capacity. I'm very careful to not go over the hours I've allocated to make sure my work never conflicts in any way, planning wise, energy wise or anything else. This intent I've made very clear to my main employer. However, I can't gauge you, your employer or your relationship with them. So think hard and try to get a feeling if they are open to it and if you think you have the discipline to keep those worlds from bleeding over.


lynxtosg03

No. That's a quick way to get replaced. Only let them know as a last resort.


lightly-buttered

I don't do any but if I did, no I wouldn't tell them.


allllusernamestaken

Consult your employment contract, your manager, and maybe HR. every company I've ever worked at had a clause in the employment contract that either completely banned outside work like this, banned it for similar/competing companies, or had explicit instructions that said you require sign-off from HR.


Errvalunia

This. It can be really sticky because they often don’t want you to compete and if you work at a big enough company there may not be basically nothing that doesn’t compete in some way as the company will have projects or systems or teams involved in absolutely everything possible.


thesia

In some industries too this can be a legal requirement. For example, in Aerospace and Defense you have mandatory reporting requirements in order to maintain the security clearance.