About Me

Hi, I’m Leilei — a backend developer, independent builder, and long-term learner interested in software, AI, open source, product design, psychology, philosophy, and the way technology changes how people live and work.

I have around 10 years of backend development experience. Over the years, I have worked with and explored technologies including C#, ASP.NET Core, Python, Django, Rust, Flutter, PostgreSQL, Redis, Docker, Cloudflare, and modern AI-assisted development tools.

These days, I am less interested in simply writing software for a predefined requirement and more interested in a broader question:

What kinds of tools are genuinely worth building?

What I’m Building

I like building small, practical, vertical products rather than chasing one giant “everything platform”.

Some of the areas I am currently exploring include:

  • AI-assisted productivity tools
  • Developer tools and autonomous coding workflows
  • Structured knowledge systems
  • History knowledge databases
  • Educational AI agents
  • Travel and content marketplaces
  • Photography licensing platforms
  • Fashion and personal styling services
  • Cross-border SaaS and utility websites
  • Open-source infrastructure for niche industries

One of my long-term experiments is AllTools, a collection of practical web tools designed around long-tail search demand, automation, multilingual content, and AI-assisted growth.

I am especially interested in products where AI is not merely a chatbot sitting on top of a database, but an actual part of the system:

  • generating structured content,
  • discovering unmet demand,
  • automating operations,
  • testing products,
  • assisting development,
  • and gradually turning software into a more autonomous system.

Technology

My technical interests currently revolve around a few ecosystems.

C# / ASP.NET Core

C# is one of the languages I increasingly appreciate for building serious web applications.

I like its balance between strong typing, mature tooling, performance, maintainability, and a large enterprise ecosystem.

I am particularly interested in finding architecture patterns that are friendly to both human developers and AI coding agents.

Instead of unnecessarily complicated enterprise architecture, I usually prefer systems that are modular, explicit, easy to navigate, easy to test, and easy for an AI agent to understand.

Rust

Rust is another language I follow closely.

What attracts me is not only performance, but the culture around correctness, explicitness, memory safety, tooling, and high-quality open-source engineering.

I am especially interested in areas where the Rust ecosystem is still relatively young, because those are often places where a small open-source project can make a meaningful contribution.

AI-Assisted Development

I believe AI is fundamentally changing software development.

The interesting question is no longer:

“Can AI write code?”

It obviously can.

The more important questions are:

  • How should repositories be structured for AI agents?
  • How do we give agents enough context without wasting tokens?
  • How do we make agents test entire systems instead of fixing isolated bugs?
  • How do we prevent one fix from introducing three new problems?
  • How should local tools, MCP servers, CLI agents, and cloud models cooperate?
  • What parts of software development can become autonomous?

I spend a lot of time experimenting with these workflows.

Product Philosophy

I tend to think about software from a product-first perspective.

Technology matters, but technology alone rarely determines whether a product succeeds.

I usually ask:

  1. Does the problem actually exist?
  2. Who experiences it strongly enough to care?
  3. What do existing products fail to solve?
  4. Is the problem frequent enough to create retention?
  5. Can the product eventually generate sustainable cash flow?
  6. Is there a distribution channel?
  7. Can a small team — or even one person with AI — realistically build it?

I am skeptical of products whose only advantage is:

“We added AI.”

AI should either dramatically reduce cost, improve quality, increase personalization, or unlock something that previously could not be done.

Otherwise, it is usually just decoration.

How I Think

I have a strong tendency to think in systems.

When I encounter a problem, I rarely look only at the visible symptom.

I tend to ask:

  • What incentives created this?
  • What constraints shaped the outcome?
  • What feedback loops keep it going?
  • What trade-offs are hidden underneath?
  • What happens if the environment changes?

This way of thinking affects how I look at software, markets, organizations, cities, education, relationships, and everyday life.

I am particularly interested in the difference between:

individual behavior

and

the system that makes that behavior rational.

Many things that appear irrational at the individual level become understandable once you examine incentives, constraints, history, and environment.

Learning

I am a fairly obsessive learner.

My interests have moved across many areas over the years:

  • software engineering
  • artificial intelligence
  • economics
  • investing
  • psychology
  • philosophy
  • Buddhism
  • Christianity
  • history
  • sociology
  • urban life
  • migration
  • education
  • product strategy

I do not necessarily study these subjects in order to become an expert in every field.

Instead, I am trying to build a better mental model of the world.

One important change in my thinking over the years is that I have become less interested in finding a single “correct worldview”.

I used to prefer clean answers. Now I am much more comfortable with uncertainty, competing explanations, imperfect information, trade-offs, and multiple truths existing at the same time.

Frameworks are useful. But a framework should help us understand reality — not become another cage around it.

Open Source

I am increasingly interested in open source.

Not every project needs to become a startup. Sometimes a project can be valuable because it solves a narrow problem well, contributes to an ecosystem, creates reusable infrastructure, helps other developers, builds reputation, or simply becomes a useful public artifact.

I particularly like projects that are small enough to understand but deep enough to matter.

My current philosophy is:

Do not wait for the perfect project. Build something real, learn from it, and iterate toward something better.

Sometimes “reinventing the wheel” is not wasted effort. For someone who has spent too long thinking, planning, or optimizing, rebuilding an existing idea can actually be a very good way to regain momentum.

The first project does not need to be revolutionary. It just needs to exist.

Life Philosophy

A recurring theme in my life has been the tension between thinking and experiencing.

It is possible to understand many things intellectually while still having very little direct experience of them.

Books can provide maps. But a map is not a journey.

Over time, I have become more interested in participating in life rather than only analyzing it.

That means allowing more room for imperfect decisions, experiments, relationships, travel, uncertainty, ordinary experiences, and occasionally breaking my own rules.

I still value discipline. But I no longer think discipline has to mean rigidity. Sometimes flexibility is a more advanced form of self-control.

What I Value

A few principles currently matter a lot to me:

Curiosity over certainty. I would rather keep updating my worldview than defend an old conclusion.

Systems over symptoms. Understanding incentives and structure usually explains more than judging individual behavior.

Iteration over perfection. A mediocre project that exists teaches more than a perfect project that remains in your head.

Independence over status. I care more about having control over my time and direction than following a conventional career ladder.

Tools over hype. Technology is most interesting when it becomes useful infrastructure.

Experience over abstraction. Thinking is valuable, but eventually reality has to be touched.

Current Direction

At this stage of my life, I am trying to bring several threads together:

software engineering + AI + independent products + open source + lifelong learning

The goal is not necessarily to build one enormous company.

I would rather build a portfolio of useful things: tools, products, open-source projects, experiments, and knowledge.

Some will fail. Some may become businesses. Some may simply teach me something.

That is fine.

The important thing is to keep moving from:

thinking → building → testing → learning → rebuilding.

In One Sentence

I’m a backend developer and independent builder trying to use software, AI, and interdisciplinary thinking to understand the world a little better — and build a few useful things along the way.