Yeah but.. What do I do? Software Leadership

Slides:



Advertisements
Similar presentations
ORGANIZATION MANAGEMENT Improving Work Performance.
Advertisements

Building Human Resource Management Skills National Food Service Management Institute 1 Effective Leadership and Management Styles Objectives At the completion.
Yeah but.. What do I do? Software Leadership Dan Fleck 2007.
Yeah but.. What do I do? Software Leadership Dan Fleck 2010.
Yeah but.. What do I do? Software Leadership Dan Fleck 2007.
How to Make a Schedule. Opening Activity (Video) 1. Is it okay to call in sick to work if you woke up one morning and just did not feeling like going.
The Secret to Success (Really!) Performance Management Beth Burbage Vice President, Organizational Development Silverado Senior Living.
Customer Service Dialog By: Haley Barritt Hour 8.
Language Learning for Busy People These documents are private and confidential. Please do not distribute.. Pre-Intermediate: Interview Skills 5 Discussing.
May I Quote You? What’s the difference between a good quote and a quote that says nothing?
SMART Goal Specific: specific with details
Fall 2015 Parent Training Social Skills, rewards and consequences
Time Management.
Time Management.
Giving Constructive Feedback
Young Adult Carers: Our Voice
DELEGATION, ACCOUNTABILITY and COACHING
Budg€t Fun.
Job Keeping Skills- Your Key to Job Security
COMP 523 Diane pozefsky 24 August 2016.
13 Phrases Never Say At Work!!!.
Hello? Using the telephone
Copyright 2015 Ellis Partners in Management Solutions
Time Management What to do and when….
Learning Time Management
Introduction to Project Management
Extreme Programming.
What do you do if you if you don’t agree on something?
May I Quote You? What’s the difference between a good quote and a quote that says nothing?
Managing Salespeople In A Recession
THE PERFORMANCE GROUP, INC.
Where are we now? Progress Grade GPA Students GPA ,655
Leading Your Team Like You Mean It
Have you ever thought of a great topic for an essay, but then wondered, “How do you gather evidence to support your argumentative essay?”
Synthesise and Evaluate
Conflict.
How do I live my life efficiently, effectively and with excellence?
Costs versus Benefits.
Top Tips Summary: Software Engineering in practice
PLANNINGTO REMEMBER STUDY AND REVISION.
Managing Time How much time do you have? How are you going to use it?
What is the % of actual Words we hear during a conversation?
Spend more time on prospects who are more likely to buy.
DETAILED PLANNING.
Building Connections: Community Leadership Program
Interacting with Co-Workers and Customers
Using networks to be more effective
Are you ready to become a Young Professional?
September Meeting 6th and 7th  7:10am or 3:15pm.
Evangelism: Telephone Approach
MANA 4328 Dennis C. Veit Offer and Orientation MANA 4328 Dennis C. Veit 1.
Great News! You got an interview!
Applied Software Project Management
Delegation Skills.
Communication Chapter 7.
Getting Hired By Expireds Part 1
Junior Leader Training Troop 614 – November 24, 2002
New country and Varied Cultures
Managing Customer Expectations
The Art of Time Management
View from the bridge …...
Do you think you got Skittles?
How do I live my life efficiently, effectively and with excellence?
Effective Leadership and Management Styles
Communication Chapter 7.
Software Development Life Cycle (SDLC)
Difficult Conversation
If I Only Knew Then What I Know Now
Getting Hired By Expireds Part 1
This is a template for a presentation that you can use to introduce your team to Harvest. You can customize the content of the slides. You’ll want to pay.
Presentation transcript:

Yeah but.. What do I do? Software Leadership Dan Fleck 2007

The Question Often the question comes up after a lesson in Software Engineering, “I know all these practices, and techniques, but what do I REALLY do?”

Who you are First, we need to know who you are Project Manager (PM) Technical Lead Within 2 years you’ll manage people Within 4 years you’ll manage a project Developers Testers QA CM

Responsibilities Tech Lead Deliver the software on time Managing the process Guiding the solution architecture Scheduling Development tasks Testing tasks Deployment Managing requirements and change requests Providing status information to your boss

Question? You are the tech lead of a team. The customer asked you to do three new features, which you agreed to because programmer Joe said they’d be done on time. The project is late by 3 weeks. Whose fault is it? A Customer C Yours B Joe D The Man

Deliver Software on Time No excuses -- it’s not on time, it’s your fault Key Strategies Constantly be aware of the schedule and update it if needed Communicate updates to the team and the customer Don’t make up the schedule -- Ask for developer’s estimates then review them for reality

Manage the Process You set the process for the team. Establish a software CM repository if one doesn’t exist Establish a build process if one doesn’t exist (time spent automating repetitive tasks pays off in the long run!) Think about all the things from this class, which do you need to do and to what extent? Different developers may need to apply process in different ways (junior/senior)

Management Question On your team, how detailed should you know schedules of your team members? A It depends B Daily B Weekly D Monthly

Managing Developers Know what they are doing, but don’t micro-manage Help when problems occur Let people figure things out Don’t let them struggle and jeopardize the schedule They estimate tasks - you then hold them to those estimates Ensure they are working on the customer’s priorities Make them unit test and write documentation required of them Recognize differences in style -- if you don’t know, ASK THEM! Got here 11/11/2008

Managing Testers How do we manage testers? A More closely than developers B Less closely since their job is easier C The same D It depends how they perceive their job

Managing Testers Same as developers, but additionally… During a testing cycle make sure they are the priority --- if they need help from a developer, they should get it Make sure everyone understands testers job is to find bugs -- we’re all on the same team If the development schedule slips, do NOT reduce the testing time to compensate

How do you motivate people? A Buy pizza B Give them a promotion C Let them leave early some day D All of the above E Who cares… I’m the boss

Managing People We’re not parents -- “because I said so” is not acceptable All of us are smarter than any of us Have fun -- buy food! If people are working late into the night a couple times, have the company buy dinner for them. YOU make it happen! At the end of a successful release cycle, have the company take the team to lunch Take a 2 hour bowling lunch every 4-6 months Other ideas???? Take the time needed to work with them -- you always have time for your people!

Manage Requirements and Change Requests Always do what the customer wants or explain why they don’t really want it. Say “yes” to the customer! Don’t say “yes” to the customer and pay for that by killing your team add time to the schedule Remove other features If your boss does this, require them to provide the resources you need or go back and explain their mistake to the customer Use an automated bug tracking/feature request system (Bugzilla, Gnats, PVCS Tracker, many others…)

Behind Schedule Your system is behind schedule. You are working on it and your team says you will be able to catch up and deliver on schedule. What do you tell your boss? A Nothing… we’ll hit the deadline B Tell him all is good C Tell her that we are behind schedule, but will catch up D Get him drunk, then B

Provide Status Reports Provide realistic information to your boss What are the current risks How is the team feeling Are we on schedule Become a great demo-er of your system Your job is technical and political - you must always be able to sell your product

Other tasks Be an expert on the system Test it Be able to demo it completely Clearly understand all features Setup a periodic meeting for the team to discuss how we can make this project better Don’t be afraid to try new things If you believe in something, don’t be afraid to force it on your team for a short amount of time (eat your vegetables!)

Other tasks Change slowly (not all at once) Provide feedback to the team that you hear Customer loves feature X Customer doesn’t seem so happy today about us removing feature Y Give credit wherever you can Glad you liked feature X, I’ll let Robin know because she developed it. Be honest -- we screwed up… how do we fix it?

Summary Monday Tuesday Wednesday Update the schedule Determine what people are working on this week Tuesday Think about risks Look through change requests to see if anything is now higher/lower than it should be Wednesday Build the latest system Spend some time testing it/using it

Summary Thursday Friday Saturday Sunday See if developers seem to be on schedule Anyone needing help? Friday Do all the tasks you were supposed to do Mon-Thurs, but really you were to busy to do any of them! Saturday Drink Sunday Sleep

Summary Everything on the team is your responsibility. Success or failure is all up to you!

Afterthoughts Wait, wait, wait… I’m not going to manage yet… What should I do as a software engineer?

Problems on the team If you are a software engineer and ask your boss for help, but he doesn’t have time to talk to you or help. What do you do? A Talk to your co-workers for help B Talk to boss’s boss for help C Get a new boss D Work harder to solve the problem yourself

Software Engineers If they don’t ask, tell the boss when you will get a task done If they don’t ask, tell the boss what you are working on this week If they don’t ask, tell the boss when you’re having problems and need help If they don’t help --- get a new boss!

I’m great.. but no promotion! You believe you’re a great leader, but have not had the opportunity to lead. You want a promotion, how do you get it? A Tell the boss how good a leader you are B Work harder in your current role and do an exceptional job C Take classes and show your boss your resume D Start your own company

Getting the promotion… Don’t say “I’m a really good leader, they should promote me into that role where I’ll shine!” If you’re not “shining” in a smaller role, there is no incentive to promote you to a larger role!!! Shining is : getting work done on schedule, working well with others, being helpful to others, taking on more tasks, getting to work on time (sober), not complaining!