As many engineers in the industry, we have on-call duty. The on-call duty is defined at the beginning of each month and the list of the on-call engineers for each date can be found in an excel sheet. Well, this is nice but I want to get notified when I'm on-call 🙂 I've created a … Continue reading Serverless On-call duty notifier – Part 1
Month: June 2017
One of the jobs in our CI pipeline is responsible for compiling, building and packing the code. The artifacts of the job is a directory on our storage with the build number and all the artifacts that are related to this build number. For example: //storage/build_1000, //storage/build_1001 and etc. There are other jobs that are … Continue reading Getting the right Jenkins build number using Python
Recently I found a funny bug in our code and I wanted to share some insights on it so you won't do the same mistakes. Let's assume we have a function that produces a lot of output and it can run from multiple threads. I wrote a simple program to demonstrate it: The sharpest eyes … Continue reading Proper use of static keyword
As part of my day job, I write and compile a lot of code. My laptop is not that strong and I find myself wasting a lot of time on compilation. Then I asked myself, why shouldn't I use the cloud for getting more compute power ? Choosing cloud provider and instance type My best … Continue reading How do I spend less time on compilation
Today Microsoft Azure introduced the new F-series VM sizes (you can read about it here) and our software faced a bizarre issue. When we want to create a new instance in Azure, we have an implementation that chooses VM size based on some criteria. One of the criteria is the number of data disks we … Continue reading Why you shouldn’t trust the documentation ?