Sign in

Your application sometimes receives the input {“age”: “40”}, although you receive lots of birthdate {“birthdate”: “1999–09–09”} in the input, and your application user wants to receive “birthdate” in the output. What’s the solution for it? Here I summarize the conclusion

2. current day minus age

For solution 1 you lost the distribution of day and month completely.

For solution 2 you have the distribution of day and month although it’s not real, but the time that the data is processed contributes to what you want to analyse. …

I start to use gradle and replace maven, and want to share my opinion and learnings


2. maven is verbose comparing to kotlin DSL with gradle. As I write kotlin, using kotlin to write the dependency and the build cycle is very concise

3. gradle works with Android development and is the official tool. I have a plan to learn how to develop Android application


In my work experiences, I always feel difficult to prepare 1-on-1 with my manager. Although my manager often told me I organised well the material for 1-on-1, I still find it difficult to distinguish what’s more important for my manager. If the issue I propose is critical, my manager would put more effort on this issue. Therefore I read this book The Making of a Manager: What to Do When Everyone Looks to You and want to summarise some key points. The idea from this book works for Facebook at certain time, and the management process is constantly changing.

Your manager is your coach like in basketball game or baseball game.


The Effective Engineer

is a book recommend by many excellent engineers. I expect that after reading this book I spend my time more efficiently as a developer. Many parts of the books overlap with the concept of DevOps and Scrum nowadays you know when you already work for years. The rest parts that I don’t have that clear concept after reading the book, I document and summarise them here.

is a book recommend by many excellent engineers. I expect that after reading this book I spend my time more efficiently as a developer. Many parts of the books overlap with…

The virtual conference is free and I will share the talk I recommend

Kafka as Your Data Lake — is it Feasible?

I once worked in a company that uses Kafka as soure of truth, although I have to say, not completely because at that time kafka cannot support S3 as storage like recently. This talk summaries some usage patten, for example using KSQL/Spark/Presto. It recaps and summarizes what I saw in a very comprehensive manner and give a demo. I’m quite sure the slides would be useful in the future during architecture discussion whenever necessary.

Spring Kafka Beyond…

chartmuseum and helm dependecies are efficient tools to deploy applications for different customers. This reduce duplicated lines of code in helm charts, and provide versioned helm charts the software provided to the customer for rollingback easily, and fit gitops very well. When searhing for a tutorial I didn’t find one, so I write this myself.


chartmuseum is a rest service that you can get/modify/delete helm charts, and support storing them in cloud.

Helm dependencies

Helm dependencies allow to link one helm chart with the other and generate a chart that represents a group of charts.

So you can define one…

Same domain of data goes into one Kafka topic, and Kafka topic should have only one domain, are two conclusions I often saw some people talk about. The backgroud I believe is from relational database.

Ordering Problems

The second one : Kafka topic should have only one domain, is easier to justify and it’s not ture due to ordering requirement.

When putting different event types in different kafka topics, the events are not in order.

In stream processing application, ordering is very important for performance and correctness of the output. …

Recently lots of free online courses are released, and I have much more time staying at home. I watch more Netflix, and also think of taking online course, and found many are free, and some provide certificate.

This website collects lots of free sources:

Which course to take?

Among those resources, I pick up Udacity, because it has certificate and more advanced technical knowledge that I want to learn. …

Recently I was asked from a developer for more specific reasons about migration to Java 11 from Java 8, due to unwillingness to migrate. The project is written in Kotlin and development is stopped for months, but new features planned to come in. The opposite side mainly says:

I often follow the guildance from the community and security expert and inclined to update to the next stable version…

I have a task to implement single sign-on and using the existing tech stack

tech stack:

okta, spring boot(kotlin), react

Very fortunate I found After the tutorial, you have an react app running at localhost which communicates with spring boot, secured by SSO.

One difficulty I found is debugging spring boot. Basically I want to set a Bearer token to communicate with my spring boot app.

In one of my previous employers, a token for debugging backend can be obtained by zign token , and

okta provides this functionality here

the detail about how to use this debugger could…


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