Building a Career in Software, 1st ed.
A Comprehensive Guide to Success in the Software Industry

Language: English

47.46 €

In Print (Delivery period: 15 days).

Add to cartAdd to cart
Publication date:
243 p. · 15.5x23.5 cm · Paperback

Software engineering education has a problem: universities and bootcamps teach aspiring engineers to write code, but they leave graduates to teach themselves the countless supporting tools required to thrive in real software companies. Building a Career in Software is the solution, a comprehensive guide to the essential skills that instructors don't need and professionals never think to teach: landing jobs, choosing teams and projects, asking good questions, running meetings, going on-call, debugging production problems, technical writing, making the most of a mentor, and much more.

In over a decade building software at companies such as Apple and Uber, Daniel Heller has mentored and managed tens of engineers from a variety of training backgrounds, and those engineers inspired this book with their hundreds of questions about career issues and day-to-day problems. Designed for either random access or cover-to-cover reading, it offers concise treatments of virtuallyevery non-technical challenge you will face in the first five years of your career?as well as a selection of industry-focused technical topics rarely covered in training. Whatever your education or technical specialty, Building a Career in Software can save you years of trial and error and help you succeed as a real-world software professional.


What You Will Learn
  • Discover every important nontechnical facet of professional programming as well as several key technical practices essential to the transition from student to professional
  • Build relationships with your employer
  • Improve your communication, including technical writing, asking good questions, and public speaking

Who This Book is For
Software engineers either early in their careers or about to transition to the professional world; that is, all graduates of computer science or softwareengineering university programs and all software engineering boot camp participants.


Part I. Career.- 1. The Big Picture.- 2. Landing Jobs.- 3. Learning and Growing.- 4. Changes.- Part II. Day to Day At the Office.- 5. Professional Skills.- 6. Working With Humans.- 7. Shining in an Engineering Organization.- 8. Leading Others.- 9. Adversity.- 10. Professional Conduct- Part III. Communication.- 11.  A Holistic Look at Engineering Communication.- 12. Technical Writing.- 13. Effective Email.- 14.  Describing Problems and Asking Questions.- 15.  Public Speaking.- Part IV. Technical Skills.- 16. Professional-Grade Code.- 17. Debugging.- 18. Building for Reliability.- 19. Mastering the Command Line.- 20. Operating Real Software.

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 ofresponses about maturing professionals' need for guidance, the author set out to fill the gap with this book.


Includes how to be an effective engineering leader, by leading projects, teams, and onboarding Covers how to apply accountability and responsiveness in relation to your technical job - working with customers, shareholders, and executives to successfully create and deploy systems Shows how you can accurately convey your ideas in the software world, through technical writing, public speaking, email, and using templates for common scenarios