You won't be able to change much, in my opinion. So you have to choose whether you stay and do it their way, or go.
There's a lot to be said about your situation, but I've found that oftentimes the only way to actually figure out if a job is for you is to try it out. I have had jobs in the past which looked really good from the outside, and I even got people recommending the employer and the team, and then when I started, it became painfully obvious that the place was nowhere near as good as expected. The opposite is actually less common in my experience - if if feels wrong and if people are telling you the company is not great, it probably isn't.
There's a reason why people like working at large and reputable companies. For anyone reading your CV in the years to come, a few years spent at such a company would look impressive. You do get the benefits you mentioned, like stability and salary, so that's a net positive in your current situation. Spending a bit of time there, maybe 1-2 years would definitely not set you back too far anyway, in terms of tech, experience, etc. so it might not be as bas as you imagine it.
Then, on the opposite side, if you really hate it now, maybe you won't start liking it down the line and it could be better if you throw in the towel sooner rather than later. I've had jobs where I was unpleasantly surprised at the start, then went through periods of liking my job and then hating it and then back to liking it, etc. All in all, when I look back, I tend to remember the better things, but I can also fully remember how awful it felt at times. If the primary reason for getting into the job was that you'd work on hard problems with top talent, and there's no way to get that in the near future, then why stay there at all? The current job market would probably allow you to find something very quickly.
It's really about how you feel about the job, I think. It won't probably hurt to start looking around for better opportunities, without rushing it. It does not sound like an emergency. Plus, this way you'd give it some chance at least. It's tough to be at a job which you don't like and it's all about figuring your priorities and sticking to them.
We implemented all that manually, more or less in swift (and sqlite), then react+redux, and on the back end - postgres and python+flask. Works flawlessly so far. We do have the same setup more or less, with listeners triggering UI updates and push messages signalling the clients to fetch data from the server. Then, on the server, we have two dbs -> one where we store each update or create message, in a postgres-based queue, and another one, in a normalised format which we use for login (it's way faster than replaying all messages from the queue).
There are complexities when you move beyond one or two tables, though - like maintaining relations, ensuring things get done in the correct order, that they get merged (we merge all attributes of each item - e.g. one client can change color, and the if another changes the text content of the item these will get merged), etc.
We gave up on the websocket part and implemented basic polling, because they were not supported by App Engine at the time (things might have moved on since then, which is a couple of years ago). Yet, for a note/todo/habit tracking app, it simply doesn't need to be real-time from our experience.
Have a play at https://www.mindpad.io/app/. You can see how it works if you open up the web app in two incognito tabs, or on an iPhone and the web.
The idea behind Mura Notes is basically to have lightweight disposable notes, which you don't have to provide any personal info to use and share.
Each note has two URLs, with one allowing editing, while the other one has read-only access. If you lose the URL, you essentially lose the note.
The front end polls the API every few seconds, so if you have the same note open in a few tabs you should see it changing as the content changes.
I've been using Mura Notes for a while now and I have a pinned and bookmarked "main" note, where I have links to other notes.
I used Postgres, node.js + express, and next.js + slate.js, and everything's on GCP. Since I'm the only user so far, it takes some time to spin up the instance when I access my notes, which is a little annoying (yet, cheap).
Also, I am an iOS user, so I noticed just recently that the todo editor doesn't work ok on Android, which is a problem with slate since the examples on their site also stuff up the same way. Other than that, I think it all works reasonably well.
Some other things to note are that there's a dark mode (top right) and that if you share a read link and a few people report it as abusive, the read link will stop working. The deletion of a note results in removing its content (and there's no versioning, so it is really gone), not the actual deletion of the link. And that's about it for now.
Future (major) plans include things like one-time pad encryption, where I want to have an option to generate a random key and a text field where users can enter their own and possibly other privacy-related features. Well, I don't track usage through third-parties anyway. Nor do I have any integrations with anything external, so they are sort of private, but of course, I can see the content through the db.
Except for the fact that the cognitive load on an engineer reading/debugging foreign code is an order of magnitude higher than that of an engineer who wrote the code doing the debugging.
Every time someone (usually someone from HR) tries to point out how great a company is because of its great perks like awesome couching sessions (not actual training), great team-building events, the best coffee machine ever, table tennis, etc. and how these somehow compensate for a subpar salary offer, I tell them: you just pay me well, give me more time off, and I'll handle all that myself.
It’s amazing how many people don’t realize that the Beyoncé concert in the office comes from the same pool of money as compensation. (The company only does it because it’s cheaper than bonuses) And everyone showers Instagram with photos of the show.
Don't know about Beyonce, but it's pretty common for big companies to organize private concerts with big names for their employees. I guess it's a case of just spending enough money to make this happen.
It is pretty commmon in departments such as sales, trading or marketing as incentive to e.g. invite $singer upon hitting the years sales target. Or organize a short holiday, visit to a sports event, fancy dinner, something. Seems to spill over to engineering or the whole company in some places.
As a previous engineer manager this sucks . While sales people get all kinds of bonuses for doing their job. The Engineering team gets a pat in the back because nothing broke down.
Not really related and I don't know about Beyonce, but during the dot com bubble, a company called Pixelton had a party with KISS, Tony Bennett and a reunion of The Who. They went bankrupt.
This is true, but I'd rather have an office with tea/coffee, a drinks fridge, etc, than the extra salary that the company is spending on providing that.
In part I'm paying 40% in tax so if I'm going to buy coffees it's actually more effective to have them provided by the company. But in general, that sort of convenience and benefit is often worth more than the monetary value.
Tea/coffee in the office is very different to a expensive social events, but it's all on a spectrum, and I value some of those things more than the money. I do however earn a good salary, this could well be different for many others.
> In part I'm paying 40% in tax so if I'm going to buy coffees it's actually more effective to have them provided by the company. But in general, that sort of convenience and benefit is often worth more than the monetary value.
I actually started of my working career as a factory worker (nightshift, 12 hour shifts, seven days a week). It was customary to bring along a flask of coffee and a packed lunch.
Right now, even though we have company-provided coffee, I'd rather they just give me the money to bring a flask of my own coffee.
It's more convenient, I get to make a trade-off between quality and cost as the situation calls for it, I get to switch coffees if I need to.
In current reality, though, you are correct - overall it's cheaper for the company to provide coffee instead of giving you the marginal cost of the coffee you consume. I just wanted to provide an alternative viewpoint.
I completely agree – this all depends on the company, the people, the environment, everything.
I just think that saying "just give me the money" in all cases is a) not necessarily efficient, and b) glosses over the idea that a benefit can be worth more to people than the monetary value.
It can also be worth more to the employer! The UK government don't provide tea/coffee typically because it all ends up on public record and there's a perception that the media will be outraged if the government spent £10k on tea bags, even if that might be a perfectly reasonable expense across tens of thousands of employees (made up numbers, not important). The result is that in some offices you get contractors being paid £800 a day taking a 15 minute break to go down to the shop to buy milk for their tea, or to get a coffee from a coffee shop, costing far more than it would cost to just have some available in the office.
Tea and coffee ought to be a baseline in any office environment imo. I think it'd be worth it for companies to just pay for it, otherwise employees set up a tea club, spend work time doing it and fall out over it.
Terence McKenna used to remind people that tea and coffee benefit an employer more than an employee - it's not a break to rest, it's an employer encouraged chemical stimulant to make you work harder. As an employee, you're hyped to work harder - which isn't necessarily a benefit to you at all.
That companies have then reframed it as an "employee perk" is a very slick PR move.
I agree with the idea that many employee perks are actually detrimental to employees. But this one is pretty 50/50. I'm going to drink two cups of coffee every day no matter what, so employer-provided coffee benefits me. After-hours coffee I agree with.
I've often thought that instead of an expensive coffee machine, ping pong table or playstation, I'd like a tea lady (or tea person as they would/should be called now)
Interesting, there's no tea/coffee club at my office - my company doesn't provide tea/coffee/beverages, but does provide keurig machines. People either bring in their own coffee machines/coffee/french presses or they bring in their own k-pods. I am perfectly fine with it myself.
I'm not a loner - I'm quite a social person - but I nonetheless agree. My work can be rewording and enthralling but it's also draining and it's full of people who I would (mostly) never spend time with outside of that setting. I've lost count of the number of retros / all hands over the years where people have bemoaned the breakneck delivery pace, change of priorities from above, chaotic management etc., and leadership have suggested team building sessions / coffee roulette / team lunches to boost morale. These days it just makes me switch off completely.
I'm with you. I may be an introvert but I'm actually quite social. The key for me is that I'm social on my own terms. Mandatory fun events and forced team bonding do nothing but alienate me from everyone else. The harder my manager tries to force me to be friends with my colleagues the more I refuse to.
also, most of those perks are made to keep you at the office.
"oh you wanna play videogames/have a massage/play table tennis after work? sure! but you can't leave the office, which means you are accessible by everyone even after hours. and because you are not technically working, you won't get overtime. oops."
I told my manager that if they want more than 40 hours per week, we can negotiate overtime. And considering my tax bracket, I'd rather be compensated with vacation days than money.
I don't understand why _anyone_ should be on a salary model of compensation. It doesn't feel like a privilege awarded to me as a middle-class white-collar worker. The privilege is the fact that I can tell my manager to stick it and I won't get canned immediately.
As a lifelong salaryperson: Salaried employees don't work for hours, they work to get specific tasks done. If your work only takes 4hrs, then you get a short day. If your work consistently only takes 4hrs, then you work fewer hours as a lifestyle.
Of course, employers hate this, but the privilege of salary is being able to tell your manager to stick it to them on a daily basis by pointing to the tasks and showing that they're done.
> but the privilege of salary is being able to tell your manager to stick it to them on a daily basis by pointing to the tasks and showing that they're done
Maybe at some enlightened place. But all places where I have worked in last 15 years, if it is more that 8 hrs its requirement of job but when its less, one still need to be at office for at least 8 hrs.
The sticking part may be true for once in a while but on daily basis, I need to just suck it up and stay at office regardless.
> A good couching session relaxes even the most stressed up worker
Depends on which side of the couch you are, I expect. The couchers (couch-workers?) probably do get stressed by providing couching sessions 8 hours a day.
I got suckered by this once and only once. What seemed to be a great environment and culture on the surface, with lots of good perks, ended up being the most toxic and dysfunctional workplace I've ever been at. I was completely miserable and left in two months. I just couldn't take it. Ever since any office that tries to advertise how "awesome" they are by showing off all the trendy perks they offer immediately gets lowered in my estimation.
Just to clarify.. Yes, vertipaq is the tech behind power pivot, power bi and sql server analysis services (in tabular mode) and the same column-oriented storage is also used in sql server. Excel generates queries against the data stored in a vertipaq model. You cannot write normal excel formulas on top of it and you have to use DAX (a unique to msft language, which is the replacement for MDX) instead, which is pretty much a no-go for anyone but well-trained power users.
It really depends. I've seen developers commit tiny changes all the time, which do not make sense - I wouldn't want to trace a small logic change over 10 commits. Also, sometimes you commit, then realise that there's a stupid mistake you've made and then you fix it with another commit. In those cases it does make sense to squash the commits so that you get a normal, logical, commit in the history. On the other hand, squashing perfectly legit commits together into a horrendous single commit is a pretty bad practise for obvious reasons.
Certs are maybe one of the last things my colleagues and I look for on a CV. However, in many cases, it does help a bit to have some relevant certificates listed there, especially if the candidate is applying for a junior position, or a position which does not explicitly require a tertiary degree, since it shows that they have made some effort in the right direction. Unfortunately, very often they had gone through some brain dumps and cannot demonstrate even basic subject matter knowledge in person.
When I worked for a company which tracked this religiously, an average junior candidate with at least one certificate listed on his application had a lower score than an average junior candidate. The observation was the same, people frequently sunk time into some cert which taught them some syntax quirks, or were so shallow that the basic concepts behind what they (supposedly) learned were totally foreign to them. Too little practical knowledge for it to matter.