In agile, the same capability employees form some kind of group often called “chapters”, similar in some ways to functions in traditional organizations (ex: Android chapter). Each chapter is responsible for: developing talent - guiding along their career paths; evaluating and promoting people; and building common tools shared by squads, standardize developer culture and ways of working. Because the chapters are responsible for hiring they must deploy talented people to the appropriate squads, based on their expertise and demonstrated competence, but once the talent joins the squad, chapters can not tell them how to set priorities, what to do within…


We all been told how good the unit tests are for the project, the positive impact from it is hugely overweight the time it requires. And we believe that the next project will be perfect with all the fancy technologies on the market, CLEAN design, and testability in mind. Usually, it ends up like a dream again. As our expertise grows we are hired to fix the existing project, to fight against the rotting design and

Let’s talk about the projects which are already deployed for a long time, already decaying, and no dependency injection as well. We can easily…


პირველი ქართული ტექნოლოგიური პოდკასტი დეველოპერული კულტურის, ტრენდული ტექნოლოგიების და კარიერული ზრდის შესახებ.

პოდკასტი შეიქმნა 2018 წლის მიწურულს თუმცა გააქტიურდა 2020 წლის დასაწყისში. ამავე წელს Soundcloud პლატფორმიდან გადავბარგდი Buzzsprout-ზე, რომელიც პოდკასტებზეა ორიენტირებული და ყველა საჭირო ხელსაწყოს მთავაზობს უკეთ სამართავად.

პოდკასტმა მხოლოდ 2020 წელს თებერვლიდან მოყოლებული მოაგროვა 10 000 გადმოწერა (არ ითვლება soundcloud)

რა არის გადმოწერა და რით განსხვავდება მოსმენისგან? გადმოწერა != მოსმენას. აპლიკაცია ან ვებსაიტი როდესაც ფაილს მოითხოვს სერვერიდან, ლოკალურადაც იქეშირებს ხშირად, მსმენელი მერე აპაუზებს, შეიძლება აგრძელებდეს ანდაც გადაახვიოს და 0-დან დაიწყოს, მაგრამ გადმოწერით არ ნიშნავს რომ ყოველჯერზე ითხოვს ფაილს. ამიტომ მოსმენების დათვლა ძალიან რთულია, ითვლიან გადმოწერებს რომელიც მეტ-ნაკლებას ახლოს მიყვება…


My first ever attempt to hack native binary. I learned and researched a lot during this challenge. As an Android engineer, I mostly tackle mobile-related stuff and CTFs but I was curious how I could handle native code.

Photo by NihoNorway graphy on Unsplash

The task is simple: We have an input which as the name suggests is standard input for the given native program. CTF challenge also provides to download binary with the name “vulnerable”. Tried several inputs with wildcards as well but nothing has happened. Let’s dive in.


Photo by Arget on Unsplash

This is my first writeup of CTF challenge. Because of my background, I feel quite confident tackling Android platform-specific challenges. I didn’t attend Trend Micro CTF but one evening I was scrolling through CTFtime.org and found Mobile 2 task. Couldn’t find .apk attached but it’s included in the other writeup.

After solving the challenge I compared my findings with others and they put too much effort into this task, no need for python scripts nor setting up Frida to somehow hook into function or try to crack the encryption. …


AppGallery — an alternate market for Android phones has started to grow faster and the new Huawei phones are still the choice of the customers. It means we had to adapt to the new market and make app users happy.

Users with the new Huawei phones which came with HMS only had 2 options: either not to use their favorite mobile bank application or install Google Play services manually and void the warranty, which is not the best option to offer to the user. …


DevOps is a set of practices that combines software development and IT operations. It aims to shorten the systems development life cycle and provide continuous delivery with high software quality.

Life before DevOps

The business was a driver. They set all the requirements, there were constant plannings on how to finalize all the details of the software, and then it was pushed to the development team. Changes were hard to make.

It’s called a “waterfall” model when all the requirements are set beforehand and make the planning stage a lot larger. Later changes are not considered. There is only a single development team…


I was working on Friday evening when my friend sent me a Twitter link to the Winja CTF quiz. I’m quite new to the CTF stuff but when I see the mobile challenge I go for it because it always looks interesting to me.

Although those methods may look primitive and I believe there are many experienced people who would laugh at these techniques still they work and it’s just a hobby, so bear with my writeup 😃

Tweet challenge

Back to the main story. This quiz asks us to find the hardcoded string in the application. Usually, if it’s…


ამ ორ სიტყვაში მოქცეული ამბის უკან, საკმაო შრომა, ტექნიკური ანალიზი და პროცესები დაგვიგროვდა, რაც გვინდა, რომ გაგიზიაროთ.

TBC mobilebank on Huawei AppGallery

ისტორიისთვის გავიხსენოთ: 2019 წელს ამერიკულ კომპანიებს შეეზღუდათ ჩინურ Huawei-ისთან თანამშრომლობა, რაც ნიშნავდა იმას, რომ Huawei-ის ტელეფონები აღარ გაიყიდებოდა Google-ის სერვისებთან ერთად და ამ სმარტფონებში არც შემდგომში ჩაიწერებოდა აღნიშნული სერვისები. Google-ის სერვისები მოიაზრებს სხვადასხვა ცნობილ აპლიკაციებს როგორებიცაა: Youtube, Gmail, Maps და თვითონ Play Store.

ერთი შეხედვით, დიდი პრობლემა არ უნდა იყოს, ზოგიერთი მომხმარებელი ამ აპლიკაციების ალტერნატივებს იყენებს, აპლიკაციის დეველოპერის გადმოსახედიდან, რომ შევხედოთ თითქოს ჩვენს აპლიკაციებსაც არ უნდა შეექმნას საფრთე, თუმცა, ასე მარტივადაც არა საქმე.

სხვადასხვა აპლიკაცია, მათ შორის თიბისის მობაილბანკის აპლიკაციაც იყენებდა Google-ის სხვადასხვა…


Photo by Pathum Danthanarayana on Unsplash

როდესაც საუბარი იწყება ტესტირებაზე Android პლატფორმის შიგნით ბევრი ჩუმდება. ყველას გვახსენდება ჩვენი შავბნელი ViewModel-ები და WorkManager-ები. რაღაც მომენტში გული მშვიდად გვაქ, რადგან ვიცით რომ activity/fragment-ში ჩადებული ცოდვები unit და instrumental ტესტებს არ ეხება. მაგრამ ფრაგმენტებში ისედაც არ უნდა იყოს არაფერი ლოგიკა გასატეტესტი, არა? 😈

აი როდესაც საუბარი იწყება ავტომატურ UI ტესტირებაზე Android-ში უფრო მეტი დუმდება. მოგონებებში ჩნდება არასტაბილური ტესტები , უამრავი ხელსაწყო და დოკუმენტაცია რომელიც გვპირდება დახმარებას მაგრამ რეალობაში გამოყენება ბევრად რთული აღმოჩნდება ხოლმე. პატარა საჩვენებელ მაგალითებში რომელიც Github-ზე ბევრი ვარსკვლავით იწონებენ თავს რეალურ ცხოვრებაში უსურად ჩანან. …

Merab Tato Kutalia

Software Engineer with 8 years of experience, specializing in Android development. Chapter Lead @ TBC Bank. Amateur cyclist and runner

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store