We may earn an affiliate commission when you visit our partners.
Course image
Nancy Wang

Sponsored by AMAZON WEB SERVICES (AWS).

Read more

Sponsored by AMAZON WEB SERVICES (AWS).

Learn real-world software engineering management skills to succeed and impress in your first (or next) management role at elite engineering organizations. NANCY WANG, Director of Engineering and General Manager of AWS Data Protection Services and Founder, Advancing Women in Tech (AWIT), shares with you the engineering skills cultivated at AMAZON (the #2-ranked company in the Fortune 500), with supplemental practices from GOOGLE and MICROSOFT. Develop the skills and mental models that the world's best engineering managers apply to attract and retain world-class engineering talent.

Upon course completion, you will understand what world-class software engineering organizations expect of their managers, including:

* How to BECOME A MANAGER

* Whether MANAGERS or INDIVIDUAL CONTRIBUTORS make more money

* What is the difference between MANAGER EFFECTIVENESS and MANAGER QUALITY

* How to HIRE YOUR TEAM

* How to guide a team with TEAM GOALS

Enroll now

What's inside

Syllabus

Are you the next great engineering manager?
What do some of the world's best software companies expect managers to do all day? What differentiates great managers from struggling ones? Is it possible to identify managers using only 2 rules and 2 forms of evaluation? Find out in this lesson!
Read more
Hiring your team
Hiring is the most important skill for software engineering managers to perfect. Despite that, what percentage of managers are unable to meet their hiring targets? And what can you do to meet and exceed your hiring targets? Find out in this lesson!
Setting your team's goals
What is a team goal? How many do you need? Should you use Amazon-style SMART goals or Google-style OKRs? Find out in this lesson!

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Designed for individuals seeking to lead engineering teams, particularly those interested in Amazon's successful management strategies
Led by industry experts with a proven track record at Amazon, Google, and Microsoft
Provides an in-depth understanding of the specialized skills required for effective software engineering management in elite organizations

Save this course

Save Leadership Principles for Software Engineers to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Leadership Principles for Software Engineers with these activities:
Review Agile methodologies
Review Agile methodologies to strengthen your foundation for the course.
Browse courses on Agile
Show steps
  • Review the principles of Agile methodologies.
  • Read books or articles about Agile.
  • Attend a workshop or training on Agile.
Form a study group with classmates
Form a study group with classmates to discuss the course material and collaborate on assignments.
Show steps
  • Identify classmates who are interested in forming a study group.
  • Set up a regular meeting schedule.
  • Prepare for each meeting by reviewing the course material.
  • Discuss the course material and work on assignments together.
Review AWS documentation
Review AWS documentation to reinforce your understanding of the concepts taught in the course.
Browse courses on AWS
Show steps
  • Visit the AWS website and explore the documentation.
  • Search for specific topics related to the course.
  • Read the documentation carefully and take notes.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Attend industry conferences and meetups
Attend industry conferences and meetups to connect with other software engineering managers and learn about best practices.
Show steps
  • Identify relevant industry conferences and meetups.
  • Register for the events and attend.
  • Network with other attendees and learn from their experiences.
Design a team goal tracking system
Create a team goal tracking system to apply the concepts learned in the course.
Show steps
  • Identify the key team goals.
  • Choose a tracking tool or create your own.
  • Set up the tracking system.
  • Monitor the team's progress and make adjustments as needed.
Write a blog post about software engineering management best practices
Write a blog post to share your knowledge and reinforce your understanding of software engineering management best practices.
Show steps
  • Choose a topic related to software engineering management.
  • Research the topic and gather information.
  • Write a blog post that is clear, concise, and engaging.
  • Publish your blog post and promote it on social media.
Manage a small team of engineers
Manage a small team of engineers to apply the concepts learned in the course.
Show steps
  • Identify a project that you can manage.
  • Recruit a team of engineers.
  • Set clear goals and expectations for the team.
  • Monitor the team's progress and provide feedback.
  • Celebrate the team's successes.

Career center

Learners who complete Leadership Principles for Software Engineers will develop knowledge and skills that may be useful to these careers:
Engineering Manager
Engineering Managers are responsible for the technical and managerial aspects of software development. They lead and motivate teams of engineers, set goals, solve problems, and ensure that projects are delivered on time and within budget. This course can help you develop the skills and knowledge you need to be an effective Engineering Manager. You will learn how to hire and manage a team, set goals, and solve problems. You will also learn about the latest software engineering trends and best practices.
Software Architect
Software Architects design and develop the architecture of software systems. They work with engineers to create and maintain software systems that are scalable, reliable, and secure. This course can help you develop the skills and knowledge you need to be a successful Software Architect. You will learn about software design principles, best practices, and the latest software development tools and technologies.
Technical Lead
Technical Leads are responsible for the technical direction of software development projects. They work with engineers to design and implement software systems, and they provide guidance and support to team members. This course can help you develop the skills and knowledge you need to be a successful Technical Lead. You will learn about software design principles, best practices, and the latest software development tools and technologies.
Software Development Manager
Software Development Managers are responsible for the management of software development projects. They work with engineers to plan and execute software development projects, and they ensure that projects are delivered on time and within budget. This course can help you develop the skills and knowledge you need to be a successful Software Development Manager. You will learn about project management principles, best practices, and the latest software development tools and technologies.
Senior Software Engineer
Senior Software Engineers are responsible for the design and development of complex software systems. They work with engineers to create and maintain software systems that are scalable, reliable, and secure. This course can help you develop the skills and knowledge you need to be a successful Senior Software Engineer. You will learn about software design principles, best practices, and the latest software development tools and technologies.
Software Engineer
Software Engineers design, develop, and maintain software systems. They work with engineers to create and maintain software systems that are scalable, reliable, and secure. This course can help you develop the skills and knowledge you need to be a successful Software Engineer. You will learn about software design principles, best practices, and the latest software development tools and technologies.
Software Test Engineer
Software Test Engineers are responsible for testing and evaluating software systems. They work with engineers to identify and fix bugs, and they ensure that software systems meet quality standards. This course can help you develop the skills and knowledge you need to be a successful Software Test Engineer. You will learn about software testing principles, best practices, and the latest software testing tools and technologies.
Project Manager
Project Managers are responsible for the planning and execution of projects. They work with stakeholders to define project goals, develop project plans, and track project progress. This course can help you develop the skills and knowledge you need to be a successful Project Manager. You will learn about project management principles, best practices, and the latest project management tools and technologies.
Systems Analyst
Systems Analysts gather and analyze data to determine the needs of a software system. They work with engineers to design and implement software systems that meet business needs. This course can help you develop the skills and knowledge you need to be a successful Systems Analyst. You will learn about systems analysis principles, best practices, and the latest systems analysis tools and technologies.
Business Analyst
Business Analysts gather and analyze business requirements to determine the needs of a software system. They work with engineers to design and implement software systems that meet business needs. This course can help you develop the skills and knowledge you need to be a successful Business Analyst. You will learn about business analysis principles, best practices, and the latest business analysis tools and technologies.
Product Manager
Product Managers are responsible for the planning and development of software products. They work with engineers to design and implement software products that meet customer needs. This course can help you develop the skills and knowledge you need to be a successful Product Manager. You will learn about product management principles, best practices, and the latest product management tools and technologies.
Data Analyst
Data Analysts collect, analyze, and interpret data to identify trends and patterns. They work with engineers to design and implement software systems that use data to improve decision-making. This course can help you develop the skills and knowledge you need to be a successful Data Analyst. You will learn about data analysis principles, best practices, and the latest data analysis tools and technologies.
Data Scientist
Data Scientists collect, analyze, and interpret data to identify trends and patterns. They work with engineers to design and implement software systems that use data to improve decision-making. This course may help you develop some of the skills and knowledge you need to be a successful Data Scientist. You will learn about data analysis principles, best practices, and the latest data analysis tools and technologies.
Artificial Intelligence Engineer
Artificial Intelligence Engineers design and develop artificial intelligence systems to solve business problems. They work with engineers to implement artificial intelligence systems into software systems. This course may help you develop some of the skills and knowledge you need to be a successful Artificial Intelligence Engineer. You will learn about artificial intelligence principles, best practices, and the latest artificial intelligence tools and technologies.
Machine Learning Engineer
Machine Learning Engineers design and develop machine learning models to solve business problems. They work with engineers to implement machine learning models into software systems. This course may help you develop some of the skills and knowledge you need to be a successful Machine Learning Engineer. You will learn about machine learning principles, best practices, and the latest machine learning tools and technologies.

Reading list

We've selected 13 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Leadership Principles for Software Engineers.
Provides a classic description of design patterns in object-oriented software. It is highly relevant to software engineering managers who are responsible for designing and implementing software systems.
Provides a framework for managing people and teams in a high-performing organization. It classic in the field of management and is highly relevant to software engineering managers.
Provides a timeless framework for effective management. It is highly relevant to software engineering managers who are responsible for leading and managing teams.
Provides a comprehensive guide to agile software development. It is highly relevant to software engineering managers who are responsible for leading and managing agile teams.
Provides a classic analysis of the challenges of software development. It is highly relevant to software engineering managers who are responsible for planning and executing software projects.
Provides a practical guide to managing people and teams in software development. It is highly relevant to software engineering managers who are responsible for leading and motivating their teams.
Provides a comprehensive guide to software development best practices. It is highly relevant to software engineering managers who are responsible for ensuring the quality of their teams' work.
Provides a visual and interactive introduction to design patterns. It is highly relevant to software engineering managers who are responsible for designing and implementing software systems.
Provides a framework for leading change within organizations. It is highly relevant to software engineering managers who are responsible for leading their organizations through periods of change.
Provides a raw and honest account of the challenges of being a CEO. It is highly relevant to software engineering managers who are aspiring to lead their own organizations.
Provides a framework for understanding how disruptive innovation can impact established organizations. It is highly relevant to software engineering managers who are responsible for leading innovation within their organizations.
Provides a framework for building and managing a successful startup. It is highly relevant to software engineering managers who are responsible for leading new product development.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Leadership Principles for Software Engineers.
Inspiring Peak Performance on Technical Teams
Most relevant
Building Products at Global Scale
Most relevant
The Art & Science of Product Management
Most relevant
Real-World Cloud PM 1 of 3: Cloud Business and Technology
Most relevant
Automate Security and Compliance Scanning in AWS
Most relevant
Real-World Cloud PM 2 of 3: Managing, Innovating, Pricing
Most relevant
Real-World Cloud PM 3 of 3: Security, AWS Well-Architected
Most relevant
Building No-code Apps using Amazon Honeycode
AWS Certified Data Engineer Associate 2024 - Hands On!
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser