When you test features like this or caching a response with a JWT it can be very easy to default to the happy path or ignore the impact of a large volume of concurrent users.
220 karma · joined February 22, 2019
When you test features like this or caching a response with a JWT it can be very easy to default to the happy path or ignore the impact of a large volume of concurrent users.
In some cases this was off the shelf software from vendors who had gone out of business. In other cases it was software built in house that would require a complete rewrite to modernize.
All of this software was tightly integrated into processes that were critical for the company to operate. While the cost of replacing the old software was a consideration, the biggest concern was the potential disruption to operations.
If a software change reduced productivity or even worse caused work to stop entirely, it meant millions in financial impact.
When I was young I interviewed at Microsoft and was rejected. I asked the recruiter for feedback. She talked me through some of the feedback from the interviewers and gave me advice for the future. It was really helpful.
One of the funniest cases was a start up that claimed to be using AI to process their customers' requests but was actually just farming out the work to contractors who were doing everything by hand.
I'm sure it varies quite a bit from state to state though.
We had enough experience with startups who would sell one license to a big company and then throw their logo on the slide that knew the logos didn't mean anything.
We needed to know that it could do what we needed it to do and that there were enough support resources that we could get someone on the phone if we had an emergency. It is not cheap to integrate new software into the systems and processes of a large company so we also needed to know that we weren't going to put in that effort and then have the company go under a year later.
Support and stability were the two biggest issues that limited adoption for early stage startups. We didn't care if you had any big name customers. We just needed to know that your product did what we needed and you'd be able to support us for the long term.
I also remember that there were consistent ongoing quality issues. Planes from SC would require significant rework when they arrived in Everett.
To this day, the company's laptops don't have cameras and they have a whole process that you have to go through to use a camera anywhere on company property.
I'm in a low risk population but just because I'm not likely to die from it doesn't mean it's completely harmless to me.
I was disagreeing more with the extreme opinion that some have that remote work would cause these cities to become desolate. Would some tech workers leave? Definitely! Would they all leave? I doubt it.
I once worked with an engineer who had a lead that would joke all the time about firing him. As a lead he had no authority to fire anyone but it was well known that he wanted to transition into a management position. Within two weeks of the lead actually becoming a manager, the engineer left the company for another job.
I remember speaking with the engineer about it after he left and he told me that he knew it was a joke but it still made him slightly uneasy. He wondered whether there was some grain of truth in the jokes. He wanted to make sure that he was leaving on his terms.
The take away that I took from that was if you're going to go down the management path, consider everyone a potential direct report and communicate accordingly. The joke that you're making as peers can take on a different meaning the day you become their manager.
It is incredibly frustrating to run into an issue with a home grown framework and have to ask around only to discover that the person who wrote the part you're having trouble with left the company 2 years ago and no one else understands it.
I once had a similar situation happen at a very large (150k+ employees) company. Security showed up and escorted one of our contractors out the door. It turned out he had worked for the company previously and stolen documents that he used to try to extort money from the company. When he was being brought in for this contract position he had changed the spelling of his name on the form and used a social security number for someone with that spelling. During the quick background check everything looked good but the discrepancies were discovered during the more in depth check a couple months later.
When I worked there I had coworkers who were ready to retire but were hoping for one of these rounds so that they could get a little extra on the way out.
Sure. Every situation is different. This isn't meant to be universal. There absolutely are cases where rolling your own may be more efficient. However, my argument wasn't that existing solutions are no effort, just that they are often less effort than trying to do something completely custom or self managed.
Regarding future migrations, the same can be said in the opposite direction as well. You may get to a point where you need to migrate away from your custom solution to something more standard and you'll face similar time/money issues.
> Custom is more configurable.
Sometimes this is the case and sometimes it's not. Sometimes custom is very narrowly focused and as new use cases emerge requires significant rework.
> People overestimate their time worth? Sure you can theoretically work for 75$/hr, but can you get overtime/additional revenue that easily?
The number will vary for everyone. $75 may be too high for some and too low for others. If you're an attorney sacrificing billable time to do something administrative that could be outsourced, $75 may be low. The idea is to tie an actual realistic number to the value of your time.
> What is your value add? If it's software, I might suggest custom is best because that's your business. If you mash a bunch of software suppliers together, you become a middle man. I'm not saying that doesn't work, but I've seen companies go back and forth on this.
In software, I think it's important to know what your product is and to focus on your core competencies. I've seen lots of engineers decide that they need to build something from scratch that doesn't directly relate to their product. Could you build your own credit card processing system? Sure, but unless your business is credit card processing, it probably makes more sense to use something like Stripe. The same goes for lots of different aspects of your product and business.
I'm simply suggesting that you have a limited amount of time in each day and you should do what you can to get the most value out of that time. Don't ignore the value of your time and sacrifice it needlessly.
I find it really helps to put a dollar value on an hour of my time. In that context, if 1 hour of my time is worth $75 and I've spent 4 hours setting up this mail server, I've spent $300 on my labor in addition to the $60/year for the cost of the server. Obviously this doesn't work in all cases but it really helps me determine when it's worth it for me to spend my time doing something and when it's better to outsource it.
I have two issues with the fee.
1) It only covers one way. For a round trip itinerary you are looking at $250 - $400 for the pet fee. That can be more expensive than the actual ticket.
2) Your pet counts as your carry on item. I would be a little less bothered if the dog was allowed in addition to your carry on and personal items or if the airline included a free checked bag with the fee to offset the carry on. Since the dog counts as your carry on, you have to pay an additional $25+ each way to check a bag you might've otherwise carried on the plane.
I haven't experienced it personally but I've had friends in similar situations. It's not uncommon for traveling roles to have additional incentives.
I worked for a company that regularly added an additional percentage to your salary if you were on a temporary relocation or were regularly traveling for your role. This was to account for the inconvenience of being away from home, family, etc. When you returned home permanently that percentage was removed.
I would ask if there is a documented policy discussing the compensation differences between traveling and in office roles. A company of the size you mentioned should have a policy for this kind of thing. Understanding the policy should help in your communication with HR.
Additionally, it can be easier to transition to an equivalent or higher role from one company to another on the management side. Most companies are open to hiring a VP from outside but often the highest levels of IC roles are only filled by those with significant experience within the company.
When we were discussing me joining the company there was a very clear plan for the product and the path to revenue. Unfortunately, he had one meeting that completely shook his confidence in that direction. After that meeting it was something new every week.
We would build the feature of the week and then it wouldn't immediately catch on and he would decide to scrap it and start something new.
I finally jumped ship when it became clear he wasn't going to commit to a vision and his next idea was that we should make it a social platform.