> 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/en/2-intermediate.md).

# 2. Intermediate

* Personal Skills
  * [How to Stay Motivated](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/01-how-to-stay-motivated.md)
  * [How to be Widely Trusted](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/02-how-to-be-widely-trusted.md)
  * [How to Tradeoff Time vs. Space](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/03-how-to-tradeoff-time-vs-space.md)
  * [How to Stress Test](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/04-how-to-stress-test.md)
  * [How to Balance Brevity and Abstraction](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/05-how-to-balance-brevity-and-abstraction.md)
  * [How to Learn New Skills](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/06-how-to-learn-new-skills.md)
  * [Learn to Type](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/07-learn-to-type.md)
  * [How to Do Integration Testing](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/08-how-to-do-integration-testing.md)
  * [Communication Languages](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/09-communication-languages.md)
  * [Heavy Tools](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/10-heavy-tools.md)
  * [How to analyze data](/how-to-be-a-programmer/jp/2-intermediate/personal-skills/11-how-to-analyze-data.md)
* Team Skills
  * [How to Manage Development Time](/how-to-be-a-programmer/jp/2-intermediate/team-skills/01-how-to-manage-development-time.md)
  * [How to Manage Third-Party Software Risks](/how-to-be-a-programmer/jp/2-intermediate/team-skills/02-how-to-manage-third-party-software-risks.md)
  * [How to Manage Consultants](/how-to-be-a-programmer/jp/2-intermediate/team-skills/03-how-to-manage-consultants.md)
  * [How to Communicate the Right Amount](/how-to-be-a-programmer/jp/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/jp/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/jp/2-intermediate/judgment/01-how-to-tradeoff-quality-against-development-time.md)
  * [How to Manage Software System Dependence](/how-to-be-a-programmer/jp/2-intermediate/judgment/02-how-to-manage-software-system-dependence.md)
  * [How to Decide if Software is Too Immature](/how-to-be-a-programmer/jp/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/jp/2-intermediate/judgment/04-how-to-make-a-buy-vs-build-decision.md)
  * [How to Grow Professionally](https://github.com/braydie/how-to-be-a-programmer/tree/8f82f6d9d3098606bb3473fa180bb08daf047146/jp/2-Intermediate/Judgment/05-How-to-Grow-zProfessionally.md)
  * [How to Evaluate Interviewees](/how-to-be-a-programmer/jp/2-intermediate/judgment/06-how-to-evaluate-interviewees.md)
  * [How to Know When to Apply Fancy Computer Science](/how-to-be-a-programmer/jp/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/jp/2-intermediate/judgment/08-how-to-talk-to-non-engineers.md)
