Posted on

Process Notes

Scribble notes here concerning issues, policies, standards, etc to later formalize into something more, well… formal.

All existing documentation should be considered “living” and “a-work-in-progress”.

If you find something that needs fixing, don’t ignore it or complain about it — FIX IT.

All deployment packages (scripts, instructions, data, etc) must be in-house reviewed and tested using development test server before signing for turnover!

Scripts and instructions need to be consistent and follow template.

Template should be starting point and will not cover all nitnoid particulars, but should be at least contain what is common to 80%+ of projects. If it needs updating, then quit gritchin’ and update it!

Keep tabs on processes as far as what works and what doesn’t work so we can develop and document best practices.

Complaining and whining is useless unless it comes with suggestions on how to do it better and those suggestions get recorded. The person doing the complaining is the best candidate to document the solution 🙂

Need to have a consensus between all of us, in that we need to have “same story” to tell people on what we do. Too many “this is how we used to do it” -vs- the culture change we are trying to promote — basically need everyone in our team to be on same page — BTW: what is it that we do anyhow?

Have to find a working balance between the following:

Providing continuity for a project.

Development teams like having a single point of contact to work with.

Not pidgeon-holing people into stove-piped technologies or projects

Progress on project tasks and DBA tasks must continue even when a member who is normally responsible for them is “out-of-pocket”

Where is the line between what a DBE is responsible for and the project developers are responsible for. Can or should it be described in detail or just in a general guidline?

What needs to be done, what we are willing to do, and what our manning and know-how can support.

DBA vs DBE
Do we want everyone to be jack-of-all trades and do both DBA and DBE tasks?

Do we designate certain people to do DBA stuff only or in addition to a lighter DBE load?

Do we have a designated “IT” person every week who is responsible for DBA stuff for that week?

Have to balance accountability for DBA tasks being accomplished with need to maximize the number of people who can perform them.

Need a formal agreement with administrators as far as what level of access and responsibility we have on production servers

Need to find a better solution to task tracking than what is in Outlook

Definitely need a “leadership dashboard” listing all projects with a rack-and-stack prioritization and some estimate of complexity/effort — we need this so that we can authoritatively prioritize and balance our workload. What authority says one project is more important than another? This will benefit testing as well.

There is no accountabilty for problems with a project and this leads to blamestorming and blamestorming leads to anger, and anger leads to hate, and hate leads to pointing the finger at us. The buck *should* stop with the project manager for the project — need to campaign for this to be policy.

Posted on

Database Office

Database Engineering Management
Assignes DBEs to projects
Assignes DBE and DBA tasks
Oversees task completion
Deals with problems and bottlenecks
Sets and enforces policies, standards, operating procedures
Establishes goals

Database Engineering Quality Assurance (QC)
Ensures all products meet standards
Ensures templates and procedures are relavent and up to date
Reviews and approves deployment packages (instructions, scripts, etc) and Software Turnover Notices

Database Administration (DBA)
Each duty day
Ensures development database servers are operational
Ensures development backups completed successfully
Performs development database server tuning and maintenance
Maintains inventory of development databases and schemas
Maintains documentation of database server configuration and processes
Acts as consultant for Testing and Production databases
Evaluates and implements technical requests that impact server level performance

Database Engineering (DBE)
Consultant to application developers concerning all things database
Assigned as project POC for one or more projects
Reviews and approves database schema
Develops stored procedures, functions, automation packages, jobs, remote connections, and processes that run on database server (back end)
Works with developers to perform data analysis, design database structure, and implement stored procedures, functions, and queries that interact with application (front end)

Designated DBE for Project (POC)
Primary point of contact between SCEO and project team for purpose of continuity
Responsible for coordinating and following up on tasks concerning project
Channels database requirements input to project design
Coordinates efforts of other DBEs concerning project.
Part of core team for project (ie: name is on quad chart)
Attends project meetings