> For the complete documentation index, see [llms.txt](https://braydie.gitbook.io/how-to-be-a-programmer/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://braydie.gitbook.io/how-to-be-a-programmer/jp/2-intermediate.md).

# 2. Intermediate

* Personal Skills
  * [How to Stay Motivated](/how-to-be-a-programmer/en/2-intermediate/personal-skills/01-how-to-stay-motivated.md)
  * [How to be Widely Trusted](/how-to-be-a-programmer/en/2-intermediate/personal-skills/02-how-to-be-widely-trusted.md)
  * [How to Tradeoff Time vs. Space](/how-to-be-a-programmer/en/2-intermediate/personal-skills/03-how-to-tradeoff-time-vs-space.md)
  * [How to Stress Test](/how-to-be-a-programmer/en/2-intermediate/personal-skills/04-how-to-stress-test.md)
  * [How to Balance Brevity and Abstraction](/how-to-be-a-programmer/en/2-intermediate/personal-skills/05-how-to-balance-brevity-and-abstraction.md)
  * [How to Learn New Skills](/how-to-be-a-programmer/en/2-intermediate/personal-skills/06-how-to-learn-new-skills.md)
  * [Learn to Type](/how-to-be-a-programmer/en/2-intermediate/personal-skills/07-learn-to-type.md)
  * [How to Do Integration Testing](/how-to-be-a-programmer/en/2-intermediate/personal-skills/08-how-to-do-integration-testing.md)
  * [Communication Languages](/how-to-be-a-programmer/en/2-intermediate/personal-skills/09-communication-languages.md)
  * [Heavy Tools](/how-to-be-a-programmer/en/2-intermediate/personal-skills/10-heavy-tools.md)
  * [How to analyze data](/how-to-be-a-programmer/en/2-intermediate/personal-skills/11-how-to-analyze-data.md)
* Team Skills
  * [How to Manage Development Time](/how-to-be-a-programmer/en/2-intermediate/team-skills/01-how-to-manage-development-time.md)
  * [How to Manage Third-Party Software Risks](/how-to-be-a-programmer/en/2-intermediate/team-skills/02-how-to-manage-third-party-software-risks.md)
  * [How to Manage Consultants](/how-to-be-a-programmer/en/2-intermediate/team-skills/03-how-to-manage-consultants.md)
  * [How to Communicate the Right Amount](/how-to-be-a-programmer/en/2-intermediate/team-skills/04-how-to-communicate-the-right-amount.md)
  * [How to Disagree Honestly and Get Away with It](/how-to-be-a-programmer/en/2-intermediate/team-skills/05-how-to-disagree-honestly-and-get-away-with-it.md)
* Judgment
  * [How to Tradeoff Quality Against Development Time](/how-to-be-a-programmer/en/2-intermediate/judgment/01-how-to-tradeoff-quality-against-development-time.md)
  * [How to Manage Software System Dependence](/how-to-be-a-programmer/en/2-intermediate/judgment/02-how-to-manage-software-system-dependence.md)
  * [How to Decide if Software is Too Immature](/how-to-be-a-programmer/en/2-intermediate/judgment/03-how-to-decide-if-software-is-too-immature.md)
  * [How to Make a Buy vs. Build Decision](/how-to-be-a-programmer/en/2-intermediate/judgment/04-how-to-make-a-buy-vs-build-decision.md)
  * [How to Grow Professionally](https://github.com/braydie/HowToBeAProgrammer/tree/8f82f6d9d3098606bb3473fa180bb08daf047146/en/2-Intermediate/Judgment/05-How-to-Grow-zProfessionally.md)
  * [How to Evaluate Interviewees](/how-to-be-a-programmer/en/2-intermediate/judgment/06-how-to-evaluate-interviewees.md)
  * [How to Know When to Apply Fancy Computer Science](/how-to-be-a-programmer/en/2-intermediate/judgment/07-how-to-know-when-to-apply-fancy-computer-science.md)
  * [How to Talk to Non-Engineers](/how-to-be-a-programmer/en/2-intermediate/judgment/08-how-to-talk-to-non-engineers.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://braydie.gitbook.io/how-to-be-a-programmer/jp/2-intermediate.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
