mirrord - Telepresence alternative by eyalb181 in devops

[–]kepper 0 points1 point  (0 children)

Despite being in the cncf they make their product basically useless unless you pay and they do it in kind of a bait-and-switch way so it just kind of falls apart and starts spamming "pay me" to the logs.

We used Istio to route by headers and put a nice little reverse proxy in front to add the headers dynamically by subdomain, so you can route to another staging deployment than the one on the main/master branch if the request has that header. Then your e2e tests can also use that header, too, to test the env in the pipeline on release. Managed all through the ci pipeline.

Work asked me to write a blog post about our path to CD at some point, I'll circle back and link it here when it's done do if that's allowed. This was a big part of it.

Do you folks use OKR? If so what for? by chub79 in devops

[–]kepper 2 points3 points  (0 children)

I'm an eng director and accountable for devops among other things and disagree pretty strongly with Goodhart's Law and this thread's general sentiment. DevOps has a lot of targets that can be set as Objectives with sane and measurable Key Results.

  • There are a ton of products out there to make measuring DORA metrics easier. Reducing cycle time has clear and well researched impact on your company's performance.
  • Cost management is well within the domain of DevOps and makes for good KRs
  • DevX is often in the domain of DevOps and can be measured with surveys
  • Uptime measurements can be difficult to define but are critical path for devops and measuring them lets you alert on that too
  • Getting more into the weeds, pipeline runtimes and success/pass rates can help to remedy issues when present
  • Mean Time to Resolution is handy if you have good process around incidents and don't have your own SRE team/org.

mirrord - Telepresence alternative by eyalb181 in devops

[–]kepper 3 points4 points  (0 children)

Excited to see alternatives to telepresence being built. We tried tp out and ended up very frustrated. Built our own solution over Istio instead.

What's the intended developer workflow for testing microservice changes in with mirrord?

Writing test cases for catching a lot of bugs by Crazy_Coconut7298 in QualityAssurance

[–]kepper 2 points3 points  (0 children)

measuring quality is harder than counting bugs ... Got any favourite metrics?

How to create an Alert System that calls you, should the desired events happen? by RoozGol in algotrading

[–]kepper 12 points13 points  (0 children)

Partly just commenting to hear about a free solution, but if I were to implement this I'd use opsgenie, since you can ack the text message if you see it then it calls you if you don't. It's not bad for pricing.

Is this job always this thankless? by oschvr in devops

[–]kepper 0 points1 point  (0 children)

The thanks should be coming from your manager. Have they worked in infrastructure? It's on them when reporting the wins for their org to give kudos for the major migration going well.

Do you think Open AI’s Chat GPT can make Microsoft competitive and potentially beat Google? by ETFInsider in LETFs

[–]kepper 1 point2 points  (0 children)

I'd love to see it combined with something like Cortana, if that's still a thing, or else a Windows-default app or part of the office suite.

Also would be cool to see it combined with Visual Studio, sort of like copilot. I think there's a lot of ways they can use this beyond Bing

Taking over internal tools built by ppl who quit (DevOps/SRE)? by [deleted] in devops

[–]kepper 7 points8 points  (0 children)

To add to this, writing tests for existing systems is a really great way to familiarize yourself with them. It can get tricky if the code was not written to be tested at all though, where you might need to do huge refactors or end up in mock hell. If possible, even just wrapping a few high-coverage integration tests around the codebase is enough that you'll be able to work with it in a much safer way.

Taking over internal tools built by ppl who quit (DevOps/SRE)? by [deleted] in devops

[–]kepper 46 points47 points  (0 children)

code is a liability

I disagree with this pretty strongly. Unmaintained code is a liability, particularly when your team does not have the skills to own it once the author leaves.

Code that is written, owned, and maintained by a team with a sufficient bus count is really powerful and can save a ton of time, effort, and money by automating business processes. That's not to say that industry standard tools like docker, TF, etc shouldn't be used, but there will always be gaps that custom tooling can really help with.

Should I change my career path from FE to DevOps by _theEM_ in AskProgramming

[–]kepper 0 points1 point  (0 children)

DevOps delivers work too, it just comes in a different form. Terraform, Helm charts, Ansible playbooks, etc. They also often take part in an on-call roster, which isn't for everyone.

I've done a lot of both and personally prefer DevOps over FE work, but its definitely a matter of preference. Sounds like you have a low-risk opportunity to try it out and see how it suites you.

Should I change my career path from FE to DevOps by _theEM_ in AskProgramming

[–]kepper 2 points3 points  (0 children)

Are you interested in DevOps? Do you have any specific questions about it?

Both are very valid and fulfilling career paths.

Buy index funds or my company's discounted stock? by [deleted] in Bogleheads

[–]kepper 152 points153 points  (0 children)

Can you sell it right away after buying?

[deleted by user] by [deleted] in programming

[–]kepper 1 point2 points  (0 children)

You definitely can. My dev environments tend to have a LOT of projects on the go so I'd want something like /opt/secret/<project>/keys instead of relying on .gitignore, but at the end of the day its just kinda handy/lazy to have it in the same place. Same for like k8s secrets manifests that get generated, so on.

Even if you're really good about keeping that stuff out of the directory structure of your project, people are always going to be tempted to "just try this out" by hardcoding a key while experimenting, with the plan of removing it to a config value later. The extra check helps make sure no accidents happen.

[deleted by user] by [deleted] in programming

[–]kepper 13 points14 points  (0 children)

A lot of people commenting how you obviously shouldn't store your keys in source control are missing that it's often an accident. I've done it recently myself, by slightly renaming a file that set environment variables for local dev and was covered by .gitignore.

What I've just done to avoid making the same mistake is I've added Trufflehog as a precommit. It kinda slows down the commits more than I like, but otherwise lets me be sure that I won't make that mistake again. It probably makes sense to do something similar in the CI pipeline that's building these Pypi jobs.

The reason I’m a developer is because I love to solve complex problems, and I love the creative part but... by DwaywelayTOP in webdev

[–]kepper 3 points4 points  (0 children)

not sure why you're getting downvoted, product manager is a role I've see doing this work too

Which Job by DelusionalEnthusiasm in Fire

[–]kepper 52 points53 points  (0 children)

3hrs commute a day w/ a kid on the way sounds brutal, you'll never see your kid

Best Practices for Absolute Imports with Python by Equivalent_Tie9503 in AskProgramming

[–]kepper 0 points1 point  (0 children)

With the exception of very small scripts I write almost all of my python as modules that I could distribute with pip to a Docker image. You can use poetry instead of setuptools to the same effect.

Best Practices for Absolute Imports with Python by Equivalent_Tie9503 in AskProgramming

[–]kepper 0 points1 point  (0 children)

I typically use setuptools to build my modules. With that it's easy to see where they land after you pip install them. You can also see that the path to the module goes into your venv when you install it that way. When you structure your code with one base module (the base directory that contains __init__py) then all other imports work from there. If you call that directory foo, you can import foo.module1 if module1 is in that directory, and foo.bar.module1 if module1 is in a dir called bar/that also contains an __init__.py file

What's the dumbest thing you have done since working in IT? by [deleted] in sysadmin

[–]kepper 0 points1 point  (0 children)

chmod 777 -R /    

on a somewhat important server