Building a Career in Software: A Comprehensive Guide to Success in the Software Industry


Price:
Sale price$39.99

Description

Part I - Career

Chapter 1: The Big Picture

If You Only Take Away One Thing

What Is the Job

What it Means to Grow

Ten Principles

Your Relationship With Your Employer

Chapter 2: Landing Jobs

The Basics of Hiring Processes

Working With Recruiters

Resumes

Passing Engineering Interviews

Recruiters

Levels, Titles, and Compensation at Tech Companies

Chapter 3: Learning and Growing

Read Every Day

Mentorship

Imposter Syndrome is Underrated

Having Your Own Project Ideas

Performance Reviews

Stop Worrying About Title

Chapter 4: Changes

On Fear, Confusion, and Self-Loathing: Starting New Jobs

When to Change Jobs

How to Change Jobs

Maintenance is For Suckers: Choosing Teams and Projects

The Transition to Management

Adaptability is Everything

Burnout and Bouncing Back

Part II - Day to Day At the Office

Chapter 5: Professional Skills

Project Management

Effective Meetings

Productivity and Organization

Hiring Engineers: Interviewing From the Other Side of the Table

Chapter 6: Working With Humans

Social Skills

Feedback

Working With Your Manager

Working With Platform Owners

Chapter 7: Shining in an Engineering Organization

Reputation and Personal Brand

Helpfulness

Running Toward Fires

Politics and Political Capital

Professionals Maximize Business Value

Saying No is Not Your Job

Personal Reliability

Knowing Our Limits: The Epistemology of Software Engineering

Chapter 8: Leading Others

Helping a Team Succeed

Mentorship

Chapter 9: Adversity

Managing Your Emotions

Yes, Things are Broken

Conflict Resolution and Dealing With Difficult People

Dealing With HR

Making Mistakes

Chapter 10: Professional Conduct

A Word About Complaining

A Word About Gossip

A Word About Office Dating

Decorum and Political Correctness

Alcohol With Colleagues

Part III - Communication

Chapter 11: A Holistic Look at Engineering Communication

Chapter 12: Technical Writing

Chapter 13: Effective Email

Chapter 14: Describing Problems and Asking Questions

Chapter 15: Public Speaking

Part IV - Technical Skills

Chapter 16: Professional-Grade Code

Chapter 17: Debugging

Chapter 18: Building for Reliability

Chapter 19: Mastering the Command Line

Chapter 20: Operating Real Software




Author: Daniel Heller
Publisher: Apress
Published: 10/11/2020
Pages: 243
Binding Type: Paperback
Weight: 0.80lbs
Size: 9.21h x 6.14w x 0.54d
ISBN13: 9781484261460
ISBN10: 1484261461
BISAC Categories:
- Computers | Computer Science
- Business & Economics | Management Science
- Business & Economics | Production & Operations Management

About the Author
Dan Heller is a Staff Software Engineer in Infrastructure at Uber. In earlier lives, he has led reliability efforts on Uber Eats, built monitoring systems at AppDynamics, helped port iOS to the ARM64 architecture as a Kernel Engineer at Apple, directed the responses to dozens of high-stakes production outages, and managed teams of up to 25 engineers.

Along the way, the author discovered a love of mentorship and had the good fortune to mentor tens of talented engineers. Those engineers inspired him with their hundreds of questions about career paths, technical tradeoffs, and day-to-day effectiveness; when a short blog post on those themes brought a riot of responses about maturing professionals' need for guidance, the author set out to fill the gap with this book.