Each tip is capable of bringing a cultural change in your infrastructure team.
None of these would include a tip to keep backups of databases.
Really? Old times. Infrastructure teams should no longer be responsible to provide access, rather should federate access.
Every organization has been in a phase, where its infrastructure team would get 100s of support tickets a day to provide access to something or another. This restriction of access is indeed necessary to avoid creating chaos in production systems, which could be due to a lack of knowledge while making a change, or it could be an…
Keywords: Happiness, application perf monitoring, zero-trust network
For the past 10 days, I was trying to find the root cause of a bug in an application hook we created. This hook is a wrapper over the application performance monitoring tool (APM?). My team was trying to provide a managed internal hook so our engineering team could easily adopt, and without any efforts could get the benefits of APM. It was going to power the majority of the observability in our application and infrastructure.
Many services were blocked to adapt to this. Days passed, and expectations of teams were falling down…
I have realized that learnings are not just,
There is more than this. After spending at least 10hrs daily on — reading, writing, and debugging code, skimming articles, listening to fellow developers, discussing ideas, and of course, scrolling through Github, I can honestly say that there is a whole new world of learnings out there. It comes bit by bit in your everyday work.
You reading 2–3 lines about “X”, then implementing it in your code, and realizing that it didn’t work…
I bet you would have never come across such a complete toolchain in any language or framework. There are so many utilities that Go natively provides, if you start exploring them you cannot finish. Actually, you can, once you fall in love with Go.
Following are the 5 interesting and helpful utilities from Go toolchain that I have discovered. Feel free to add more in comments! Let's start.
This command lets you see the documentation of any Go’s package from your terminal. It saves a lot of time!
go doc <package_name>
Wait, there is more to it. You can…
Organizations use Cache Servers to improve data retrieval performance, optimize the latency gap in IOPS and reduce cost at scale. Or I should say organizations have to do it, to manage millions of requests per second. It takes a whole lot of effort of an engineering team to build a reliable cache management system which could be deployed, managed and monitored efficiently.
To support these engineering efforts, companies like Amazon and Google provide infrastructure to deploy and manage cache servers (or clusters). However, there is one crucial area which even these companies cannot fully help you with which is —…
Webhooks are an integral part of any company’s infrastructure. They can do a varied types of work and help in improving communication between internal and external services. If I say that you don't need a server anymore to host your webhooks, building them is super easy and they can work independently from your services, would you believe me? You have to! With AWS Serverless Platform you can build a Webhook which runs independently and you don’t have to worry to monitor and manage it. Be with me, I will explain how to create a webhook using AWS Lambda and API…
If you are developing in Go, long before the release of Go 1.11, you must have a terrible experience as I had to deal with
$GOPATH. For those who don’t know or haven’t come through this, before Go 1.11 all projects had to be created inside the
$GOPATH. It is used by the Go compiler to search for dependencies when building your Go application.
$GOPATH contains source code and binaries.
$GOPATH contains three high-level directories —
$GOPATH/src — Your all code resides here
$GOPATH/pkg — Packages used by Go internally to run itself
This is one of my article which made me explore the whole Google in pursuit of which methods is best to make synchronization work well in GoLang. All this started when I started building my own GoLang package, Go-Log. It’s a logging package that provides utility on top of Go’s normal Log package with features like — Tagging the logs into debug and error variant, adding/removing timestamp to logs, and also getting the calling function details in logs. …
This article is split into two parts —
I. Communication between fragments
II. Communication between an activity and fragment
We will first look at the primitive ways of doing these and what certainly is not good in these ways. Moving forward we will see the new and optimized way to handle these communications using ViewModel and LiveData.
Earlier to communicate between fragments, we had to pass data from one fragment to parent activity and then from this parent activity to another fragment using interface callbacks. …
Every year at I/O (Google’s biggest developer conference event), Google reveals some new capabilities with extensive quality features to make our lives easier and in turn build better user-friendly products. This year, I/O 18, Google introduced some new Android Studio Tool features to help us get a better grip of design at compile time. In this article, I will go through two of such tool features.
I. Android tools attributes
II. Sample Data (Best design helper!)
Tools Attributes are the XML attributes defined in the
tools namespace which…
Engineering @ Postman