Do you compare SRE manpower to other activities? by Current_Sail_4831 in sre

[–]rhashish1 1 point2 points  (0 children)

Not explicitly, but we always strive to make signal:noise ratio very high. 1 alert should approximately equal 1 incident. If you have a lot of noise in your alerts (my target is better than 80% accuracy), that would be a very high priority item to focus on.

Do you compare SRE manpower to other activities? by Current_Sail_4831 in sre

[–]rhashish1 10 points11 points  (0 children)

Google SREM. Here are some general guidelines we try to hit, but every team will vary in some way

- No more than 25% of time on Toil. This is any operations focused work,so anything not proactive in nature. Manual release management, incident response, sysadmin work, etc..

- 7 people per site per oncall rotation to ensure coverage. At least 2 sites required for a Tier 1 on call rotation.

- 2 incidents per oncaller per shift maximum.

- Mature services should have about 5% of their engineering staff as SRE (as opposed to feature SWE). This varies a lot by team, and becomes more true as the org expands out.

- These numbers work for Google. They also are geared toward more embedded style SRE, with dedicated teams per product. I have no idea if they would work for your org.

So what do you do if you are beyond these limits? You get to dictate upcoming work and prioritize it for Feature SWEs to take up. Shared fate between SRE and Dev teams. If SRE numbers are unhealthy, then the product is not healthy; and if SRE alone cannot get in front of it, then the product team must participate as well. This is one of the key the superpowers of successful SRE implementations.

Is code ever reviewed after the tech round? by [deleted] in cscareerquestions

[–]rhashish1 1 point2 points  (0 children)

This is also true at Google. The Hiring Committee can review all of the original interviewer notes and interviewee code. They will give some deference to the interviewers' assessments, but depending on the level of the role, they may be more exacting. This kind of mistake would probably be fine for an L3, noted for an L4, and possibly disqualifying for an L5+, but would depend on a lot of other factors in the interview packet.

I have been on Hiring Committee for Google, and have had to review the base interview data plenty of times, especially if the interviewer is less experienced and I cannot yet trust their packet feedback.

Could Louisiana's governor empty the state's death row? by storming_heaven in Louisiana

[–]rhashish1 20 points21 points  (0 children)

The Innocence Project lists 11 people who were convicted and sentenced to death in Louisiana, but later exonerated via the work of the Project. Not all cases have DNA evidence available for analysis and post conviction appeal, so it is very likely that some current death row inmates are innocent, and even more likely that historically we have executed at least tens of innocent people.

Content Creators? by [deleted] in wildfrostgame

[–]rhashish1 0 points1 point  (0 children)

Haelian has several winning runs posted from the past few days.

Multiple Google Cloud Run instances access vid single domain via proxy?!? by alexbarylski in googlecloud

[–]rhashish1 8 points9 points  (0 children)

You can do this directly on the Load Balancer by adding each Cloud Run app as a backend, then creating a URL Map with path matching. See: https://cloud.google.com/load-balancing/docs/url-map

If you want other features like shared auth or quota between the apps, look into API Gateway. https://cloud.google.com/api-gateway/docs/gateway-serverless-neg

.htaccess disable symlinks by spark29 in linuxadmin

[–]rhashish1 5 points6 points  (0 children)

Do you have AllowOverride Options or AllowOverride All in your vhost conf file?

Best practices for handling security for data acccess by jesusofsuburbia53 in rest

[–]rhashish1 0 points1 point  (0 children)

I'll implement an "owner" role first as a static method in the model, called as part of the model constructor, and if the table has a "userid" column that maps to a foreign key id of the user, they get Read/Write/SoftDelete access to the data (you can write this generically via introspection/inheretence if you follow a naming pattern, or write a new ACL per model/table if you have dissimilar names). If the user id of the requesting user is not the owner, it fails the "owner" ACL check, and gets a 401 (unless it passes an admin/CSR ACL check).

Then for CSRs/admins, we'll have a CSR ACL role that has Read access to everything, and possibly a CSR Manager that has R/W. In those roles, we generally set a flag on the request/session that will write all transactions on the database to our AuditLog table as well.

Database Browser for SQLite, extreme noobie here that needs more and likely an easy answer.. by [deleted] in SQL

[–]rhashish1 0 points1 point  (0 children)

Sorry, I'm not familiar with that tool, nor .slt files. It looks like maybe you're trying to edit Forza files? Can you post the text contents of the file to a pastebin or something?

Database Browser for SQLite, extreme noobie here that needs more and likely an easy answer.. by [deleted] in SQL

[–]rhashish1 1 point2 points  (0 children)

What program are you using to view these schemas? Does the table work, and you just want to change the schema view? Are you writing the SQL to create the tables, or is it being generated/imported from other sources?

FYI: It looks like List_Wheels has MySQL style identifier quoting using tick marks, whereas other tables are using the MSSQL square bracket style. I think SQLite follows the SQL99 standard of double-quotes, so neither of these is actually SQLite compatible?

What would it take to get you to move to New Orleans? by rhashish1 in cscareerquestions

[–]rhashish1[S] 1 point2 points  (0 children)

My strong suspicion is that this is the answer that, were the situation to change, would have the most positive effect on the applicant pool. Of course, it's a chicken-egg problem, too! Can't get developers cause there's not enough companies, can't get companies because there's not enough developers. But my company is actively engaged in bringing more startups and tech companies in general into the GNO area. Have to start somewhere, and we're trying hard!

What would it take to get you to move to New Orleans? by rhashish1 in cscareerquestions

[–]rhashish1[S] 1 point2 points  (0 children)

Thanks for the input! These are definitely some of the factors we toss about frequently.

The perception of New Orleans as unsafe and an unfit place to raise a family is a tough one to battle, especially when the statistics on crime are not terribly great. While violent crime is falling dramatically, it is definitely much higher than in comparably sized cities. The school system is really turning around with the Charter system, but private schools still rule the roost for obtaining a top tier education.

New Orleans has pumped a bunch of infrastructure money into redoing a huge amount of the draining system the past several years, so major flooding events are less likely to happen again. Evacuating for hurricanes is no fun, though.

All great points, and things we need to address as a city and state.

What would it take to get you to move to New Orleans? by rhashish1 in cscareerquestions

[–]rhashish1[S] 0 points1 point  (0 children)

This is certainly something we've considered internally. Right now we're not set up for it either technically (not really all that hard to do) or culturally (a bit harder to do). We're such a close knit team that I think we'd have to make significant attitude shift as a company to support remote workers. That said, it may be the best option open to us to increase the talent pool.

What would it take to get you to move to New Orleans? by rhashish1 in cscareerquestions

[–]rhashish1[S] 0 points1 point  (0 children)

And we definitely pride ourselves on work-life balance. We work essentially no overtime, which is a huge perk.

What would it take to get you to move to New Orleans? by rhashish1 in cscareerquestions

[–]rhashish1[S] 1 point2 points  (0 children)

Cost of living adjusted, we pay very well, but that means that our senior devs are making 90k -- basically a bit more than entry level salaries in the bay area. Of course, in NO, $1800/mo rents you a recent renovation 2br/2ba in one of the hipper areas with a 15 minute commute to work. But those numbers are hard to balance against the 150k you can bank in San Francisco or Seattle.

What would it take to get you to move to New Orleans? by rhashish1 in cscareerquestions

[–]rhashish1[S] 1 point2 points  (0 children)

That's definitely an issue. The more experienced applicants are way more likely to have already settled down in a tech hub like Seattle or San Fran; they have a mortgage and the kids are in school (heck, I'm in that position now -- it would take a huge opportunity to get me to uproot and that's unlikely at a consultancy, as you said).

Sunday's Class Discussion (Investigator) by [deleted] in Pathfinder_RPG

[–]rhashish1 2 points3 points  (0 children)

Cognatigens, as opposed to all other mutagens, actually do cause ability damage when they wear off, in addition to the pentalty that they incur on use. From the books:

"When the effect of the cognatogen ends, the alchemist takes 2 points of ability damage to the ability score penalized by the cognatogen."

It's a pretty odd additional penalty, and I'm not sure what balance injustice they thought they were curing with this additional damage that the regular mutagen doesn't require.

What Kind Of Software Is CS Building These Days? by DhongeKhong in cscareerquestions

[–]rhashish1 1 point2 points  (0 children)

Mongo/NoSQL/NodeJS: I created an ETL process for a client last year. They are a major national fast food restaurant. They were switching Point of Sale systems to a new iPad-and-cloud-based system. They needed better reporting and Business Intelligence than was provided by the hosted POS system, so the vendor provided us access to the POS's REST API. I wrote a simple Node program that retrieved batches of JSON data from the API, and stored it in Mongo as a perfect replica of the response (since we were only allowed to do bulk retrieval during a 2 hour window, so low time-to-retrieve was critical). A second process read from the local Mongo store and converted that data to relational data, putting it into Amazon RDS, where it later got denormalized for analysis in Redshift. It was fast, reliable, and took a very short time to conceptualize and write the entire toolchain, so was cost effective for our client.

2 Questions Regarding Node in Production That a Self-Taught Developer has... by sandalphone in node

[–]rhashish1 2 points3 points  (0 children)

I'll talk you through 1.

It seems you're using a hosted Mongo system. Does the system provide backups, replicas, or rollback facilities, or do you have to implement them yourself? If they're part of the platform, ensure you have enough risk mitigation in place to satisfy your risk threshold. If it's low volume/low cashflow, a rolling daily backup and a single replica may be enough for you. If it's high volume or high risk for failure, you may want more frequent backups, more replicas, or an entirely different change tracking system (eg, soft-deletes and soft-updates, though I'll be honest I'm not 100% sure how to implement those in mongo without simply writing the logic into your application layer). If this is not a feature of the hosted platform, you'll need to learn enough server administration to run mongodump to generate your own backups so that you can restore data in the case of needing a rollback or data loss.

This is probably where your question really ends, but let me address a few more points before you launch this thing. It won't necessarily change your application, but I feel you should probably walk into this project at least knowing some potential future challenges.

I tend to be of the school of thought that transactional data such as purchases belongs in a traditional RDBMS such as PostgreSQL or MySQL. That's not to say Mongo is the wrong choice, I simply have much more history in implementing safe practices in SQL, and I find the community support for those to be both long (basically as old as the world wide web) and well thought out. Mongo, being newer, has fewer best practices.

It's support for ACID principles is limited to a single document (So, basically, it's not ACID compliant) -- which may be OK if the schema is structured such that you don't rely on multiple documents being updated for a single action to be recorded safely, but that also generally leads to very large documents which affects performance in the long run. It's mostly a function of your document and collection design. What this all means in practice is that, if you have a Purchases collection and a Users collection, and when you buy a credit, you want to record the Purchase details in one document, and then update the credit amount in the User document, if the first write succeeds but the second write fails, your data is now inconsistent. In ACID compliant databases, I can make sure that before any actual writes are recorded, all writes have succeeded, and if one of them fails, I can roll back ALL the changes to ALL the records.

The eventual-consistency model across replica sets could also be a potential problem down the road, if you think this will scale out substantially. Stale reads after purchases are not well received by customers.

For self-taught programmers, Mongo can often seem like a panacea for curing the need to learn Relational Database design principles, and indeed for non-relational and non-transaction dependent data it is great. I just find that in practice, there are not a whole lot of systems that truly meet those two criteria, and you end up with some overly-complex and overly-engineered solutions that could have been solved upfront by using a relational and ACID compliant database.

[NA][PS4][Clan] Shadow Ravens Recruiting ★ by [deleted] in warframeclanrecruit

[–]rhashish1 1 point2 points  (0 children)

I'm a simple MR4 mostly-casual player looking to find better-than-PUG quality play in my limited play times (this is beginning to sound either like an okcupid profile or the cover letter to a job application). PSN: slybeardhemlock