1. Why

Software engineering is more about reading code than writing it, and part of this process is finding the code that you should read.

In fact, based on a recent Google survey, the average developer performs more than 10 searches on a typical weekday.

<aside> 🛠 Monolithic Service to Microservices;Monolithic Repo to Multiple Repos → observibility problems both in service side and repo side.


Here is a non-exhaustive list of example usages of code search engine:

2. Anatomy


3. Design Decisions

3.1 Query Language


3.1.1 Keyword

Keyword query requires the user to specify the full name for the search target. For instance, if there exists a function in the source code:

func greeting() {
	fmt.Println("hello world")