Purpose of the Position
The Database Administrator I role at UMA is responsible for administering Microsoft SQL Server and SQL databases and managing the security, integrity and performance of the databases. This position will offer the ideal candidate an opportunity to learn and grow professionally and technically while contributing to UMA’s overall Enterprise Data Management effort. This candidate will need to have either relevant educational training and/or at least 3 - 5 years of professional experience doing database administration work.
Primary Duties and Responsibilities
- Work with the Senior Database Administrator to ensure overall performance, reliability, stability, and availability of UMA’s database systems and infrastructure. Will assist with the proactive maintenance, monitoring, and troubleshooting of all database systems.
- Create documentation on database recovery and architecture effective provisioning, installation/configuration, operation, and maintenance of systems hardware and software and related infrastructure.
- Responsible for providing trend analysis to management team to enable them to make informed decisions regarding resource management.
- Work to ensure that the associated hardware resources allocated to the databases are configured for high resilience and are tuned for optimum performance.
- When performance issues arise, determine the most effective way to increase performance including hardware purchases, server configuration changes, or index/query changes.
- Identify and partner with developers to remediate inefficient or suboptimal performance of queries, processes, or data structures.
- Assist with complex and critical data/database management initiatives that typically involve multiple disciplines and multiple business groups, including responsibility for database architecture, design, integration, and/or data modeling.
- Responsible for troubleshooting and problem solving of SQL and other database systems.
- Responsible for improvement and maintenance of the databases to include rollout and upgrades.
- Work with Infrastructure to ensure all database servers are backed up in a way that meets the business’s Recovery Point Objectives (RPO).
- Assist with testing backups to ensure we can meet the business’ Recovery Time Objectives (RTO).
- Troubleshoot SQL Server service outages as they occur, including after-hours and weekends.
- As new systems are brought in-house, choose whether to use clustering, log shipping, mirroring, Windows Azure, or other technologies.
- Configure, tune, and manage SQL AlwaysOn Availability Groups.
- Deploy database change scripts provided by third party vendors.
- Perform load and execution testing.
- Document the company’s database environment.
- Strong working knowledge of SQL, Stored Procedures and SSIS packages.
- Develop and deploy methodologies for testing database performance and providing performance statistics and reports.
- Work with Senior Database Administrator to establish best practices and policies for installing, configuring, maintaining, and troubleshooting end user access and usage of database applications
- On-call availability for after hours, as needed.
- Overtime hours may be required to meet project deadlines.
- Assist with developing and enforcing database administration and user standards and procedures.
- Responsible for assisting developers in creating stored procedures and SQL commands to properly query databases.
Managing People and Teams
- Conduct knowledge exchange sessions with the BI, Software Engineering and the EDM teams.
- Work with developers to address complicated data access requirements and to resolve complex application data issues.
- Work with Senior Database Administrator to define and deliver consistent database administration standards, methodologies, guidelines and techniques.
- Ensure compliance to standards through code walkthroughs and metadata reports.
- BS or BA in computer science or equivalent education and experience (required).
- 3 - 5 years of database design and administration experience with Microsoft SQL Server databases (required).
- One or more certifications for Microsoft SQL Server 2012, 2014 and 2016 (required).
- Experience in High Availability technologies including Failover Clusters, Availability Groups and Transactional Replication (preferred).
- 3 - 5 years of experience in data warehouse concepts, practices, and procedures (preferred).
- 3 - 5 years of experience with ETL tools or ETL programming (required).
- Proficient experience writing T-SQL and stored procedures and query tuning on high transaction systems (required).
- Technical, hands-on experience implementing data warehouse solutions (preferred).
- Experience with relational database concepts (required), service-oriented architecture (SOA), ESB, and portal technologies (preferred).
- 3 - 5 years of experience with IT projects and information development (required).
- Proficient experience with Database Modeling and Design Tools (e.g., Erwin, Oracle Designer, ER Studio, etc.) (required).
- Proficient experience with the Microsoft development environment (Visual Studio, Team Foundation Server) (required).
- Proficient experience with RedGate SQL tools and other SQL Source control tools (required).
- Knowledge of other databases like Oracle and cloud-based solutions like Azure (preferred)
Associated Knowledge, Skills & Abilities
- Proficient knowledge of the database administration tools and technology in use on the project.
- Strong understanding and knowledge of: Database concepts, Interfaces to data, Rules and routing, Data mediation and transformation, Performance, Security and Data governance.
- Fundamentally aware of enterprise application integration, enterprise information integration and enterprise service bus architectures.
- Must collect, store, manage, and enable the ability to query the organization's metadata.
- Must be able to translate a data model or logical database design into an actual physical database implementation and to manage that database once it has been implemented.
- With guidance from the Senior Database Administrator, assist with implementing an appropriate database backup and recovery strategy based on data volatility and application availability requirements.
- Must ensure the structural integrity of the databases and that only accurate and appropriate data is entered and maintained in the databases.
- Must be able to proactively monitor the database environment and to make changes to data structures, SQL, application logic or the DBMS subsystem to optimize performance.
- Must be able to ensure data availability using non-disruptive administration tactics.
- Must possess in-depth SQL knowledge to understand and review SQL and host language programs and to recommend changes for optimization.
- Must possess procedural skills to help design, debug, implement, and maintain stored procedures, triggers, and user-defined functions that are stored in the DBMS.
- Must ensure that only authorized users have access to the data.
- Assist with predicting growth based on application and data usage patterns and implementing the necessary database changes to accommodate the growth.
- Must understand the basic tenets of relational database technology and be able to accurately communicate them to others.
- Must be able to integrate database administration requirements and tasks with general systems management requirements and tasks (such as job scheduling, network management, transaction processing, etc.).
- Required to have knowledge of Internet and Web technologies to enable databases to participate in Web-based applications. Examples of this type of technology include XML, CGI, Java, TCP/IP, Web servers, firewalls, SSL, etc.
- Must understand the storage hardware and software, including how it interacts with the DBMS.
Planning and Project Management
- Understand agile project management (i.e., understand what needs to happen in a project and when).
- Experience in working closely with users throughout the full implementation of the project ensuring that deliverables are met on time.
- Ability to prioritize in the face of demanding time frames.
Training and Development
- Continued development of database administration skills; keep abreast of latest techniques, best practices and trends and able to apply to project work.
- Proficient in Database Administration and Data Replication techniques, processes and best practices and able to provide guidance to other development teams (BI, ETL, Software Engineering, etc.).
- Take all required UMA training by required deadlines.
Data Analysis and Quality Control
- Accuracy in all tasks.
- Ability to work on multiple projects.
- Follow through with project tasks/strict adherence to timelines.
- Assist with developing SQL queries/scripts and similar artifacts to validate the completeness, integrity and accuracy of data within data load/refresh, backup and recovery processes.
- Participate in data analysis efforts to resolve complex database performance issues.
- Assist with the design and development of automated solutions (scripts, functions, programs, processes) to increase the efficiency of the database administration and monitoring processes.
- Attend sprint meetings.
- Document designs and specifications that adhere to company practices.
- Communicate needs as well as deployment and operations standards to Infrastructure Services.
- Good communication skills.
- Work well in a team.
- Have a good client service attitude and good work ethic.
Additional Job Requirements
- Available to respond to and address database questions/requests during business operational hours.
- Flexibility to work evenings and weekends as needed.
- Requires long periods of sitting at a desk working on a computer