Can anyone suggest any alternatives?
1,092 karma · joined June 30, 2014
Can anyone suggest any alternatives?
Going to HR is the right move for something like this. In any sane company, HR will take such a claim seriously because the potential legal downside if they don't is an unacceptable risk. In an insane company - aside from the fact that you can't measure the insanity level until you have in fact made such reports to HR and seen them dismissed - you still need to be able to show that you brought the problem to HR's attention and they did nothing about it.
Additionally, categorization is useful for quickly answering only a tiny subset of query types.
I recently force-enabled multiprocess FF on a machine that usually crawls due to memory starvation, and it's felt much snappier than before, though heavy single page apps are still not its forte.
If I ever switch, it'll probably be to Chromium. Safari is fast, but the URL bar is unusable and it's not very customizable and the Dev tools are meh. I'm avoiding Chrome for privacy reasons and Chromium for battery life reasons (and also because of 12 years of inertia and muscle memory).
I've looked at Opera and Vivaldi and the like, but their features seem to be aimed at power users of social media, not at developers or someone looking for an old-school browser experience.
So the only sort of software team that would have roles linked to caste would be one built by an immigrant (or maybe the child of immigrants) of high caste from India. Which is a tiny fraction of the software teams in this country.
It is possible that families who were of higher caste back in India tend to have a head start in terms of savings and education when they arrive in the US, but once they get here that wealth and education are the only advantages they keep. Which is not to say they are small advantages. But Americans don't recognize caste.
Most US companies would hire a CEO whose family in India was outcaste. And they would do so simply because even if they knew about castes and knew this person's standing among them (which is highly unlikely), Americans don't care one bit about what caste you came from in another country. They only care whether you're the most capable person to do the job.
There is arguably a certain amount of classism in Silicon Valley based on wealth and upbringing. And studies recently have shown that class mobility here is worse than it used to be and worse than in other developed countries. But we don't have rigid classes in this country. Americans pride themselves on being egalitarian, even if they don't always live up to that ideal.
That said, you'll notice that (for instance) African-American CTOs are vanishingly rare despite African Americans representing about 15% of the country's population. If we really want to be egalitarian, we should be asking ourselves harder why that is and how to fix the underlying inequalities that cause it.
That it's more common has probably made it easier to do research on once it gained sufficient visibility and funding.
She's criticizing how people get pigeonholed -- not just early in their careers but early in childhood -- as being "math people" or "physics people" or "humanities people". And that those categories and labels limit people who in fact are capable of learning and enjoying STEM subjects.
It's like how there's an unspoken rule in some corners of the tech industry that someone who first picked up programming later than high school can never be a "real programmer". Which is bullshit and does both individuals and the industry a major disservice.
Another common approach (if you already have a production environment) is to write a script to sanitize production data. You replace sensitive personal info with dummy data and replace all email addresses and phone numbers and the like with ones your company owns so that people don't receive communications from Dev environments. Then you just import that database, and can refresh it as needed.
The lawyer can help you recover your wages AND advise you about the legal implications of both your and the company's handling of the code, and of any action you might take to reveal it.
Also, see if you can figure out what your sleep cycle length is. For most of us it's somewhere around 90 minutes, roughly. It's easiest to wake up between sleep cycles rather than in the middle of one because we sleep most lightly at the beginning and end of a cycle. You can feel refreshed and alert waking after a while number of cycles even if you still need more rest. Whereas waking mid-cycle feels miserable and groggy even if you technically got more sleep.
Once you figure out your sleep cycle length and how long it takes you to fall asleep (8 hours is 5 90-minute cycles plus 30 min to fall asleep), you can work out how long you need to stay in bed to catch up on sleep. Adding a fractional number of cycles won't help much, and you'll feel groggy again upon waking. Adding a whole number of cycles will help you catch up and feel rested.
Since you're married, can you and your spouse take turns crashing at 6pm for a couple weeks to catch up? It might also help to sleep in separate beds when you're extra tired - sharing a bed with someone whose sleep cycles aren't perfectly aligned with yours can interfere with sleep. Other tricks can help with that too - such as getting separate blankets.
But more importantly, include a heartfelt personalized card thanking the entire team and specifically calling out that person for going above and beyond. A card like that can lift an entire office's morale for the rest of the week, and is something your PM can show off on their desk or use as evidence when asking for a raise.
1-1s and being available/approachable are not mutually exclusive. Not every employee is comfortable bringing up nagging frustrations without a formal venue for them. Especially those earlier in their careers.
And in terms of interruptions, some of us would rather have an hour scheduled on the calendar that we can work around than random drive-by interruptions from a manager who wants to "stay in touch". A 1-1 is for those conversations that the employee might not otherwise initiate, and it's for exploratory chats that eventually make it to territory you might not have covered if you were only discussing what's front of mind.
For the code review, plan to hire someone mid-level to senior - with at least 5 years iOS development experience and several apps shipped to the App Store. (And check those app reviews - don't hire someone whose app crashes a lot!) That will mean a higher hourly rate, but they'll know best practices better. You can hire them on a per-hour or a per-project basis. The number of hours will depend on the size of the codebase.
Code is harder to read and understand than it is to write. It takes far longer to read a chunk of code than it does to read a similar number of characters of non-fiction prose. For a small codebase, the reviewer should be able to finish in 1-2 weeks. For a sprawling one, it could take a couple months. Get an estimate from anyone you consider hiring.
You've already gotten decent advice on NDAs. My experience is that they're not really enforceable in many common outsourcing destinations for both legal and cultural reasons. And that in the US and other "western" cultures you don't really need them if you're dealing with someone operating in good faith. But in either case they can't hurt as a CYA move.
Good luck!
If you can wean yourself off your caffeine dependency, being well hydrated will keep you awake better than caffeine - without crashes, withdrawals, or ill effects on your sleep.
Sugary caffeinated drinks will compound the high->crash effect. And cause you to put on weight. And screw with your metabolism (putting you at risk for diabetes).
I also like to drink tea, iced in summer. One cup caffeinated in the morning (a cup of tea has half to a tenth as much caffeine as a cup of drip coffee). Unlimited herbal and decaf in the afternoon. Zero calories, or 5 per cup if I add milk. No sugar.
If you need flavor and fizz to enjoy your drinks, may I suggest the flavored seltzers such as LaCroix that are now all the rage?
Which isn't an awful return on $6k total investment, but isn't a mind-blowing 10x return either.
However, migrating an existing production DB (especially to an unproven technology) is no small matter.
And even just adjusting configuration for performance purposes can be risky. I'd prefer to do it under the auspices of a consultant DB admin with at least 10 years of experience administering and tuning this particular DBMS.
So in short, DB performance is enormously important, but it comes in third to reliability and stability.
Once your solution has been in broad production use for at least 5 years, I would absolutely consider it for a new project, though!
We ended up going with a service called Buildkite, which is almost a drop-in replacement. They even had docs specifically about migrating from Bamboo, and in general their documentation has been excellent.
We really like having full control over the test execution environment despite not being ready to start using Docker, and we've been pretty happy with the service itself as well as the tech support we've received. I might choose something else for a different company, but this is a very good fit for us.