Salt Lake County…A career with a purpose in the community you love!
Salt Lake County invites you to explore our exciting career opportunities. We seek highly enthusiastic individuals to enrich our County with your experience and talent. If you enjoy working in a team environment that is committed to changing the lives of its community, please keep reading.
What it is like to work here:
At Salt Lake County our culture is woven into all aspects of our work and our employees’ lives, from the way we treat each other to the way we support the community. To promote and foster a fun and healthy work environment, we appreciate employees through great benefits, a healthy work life balance and room to grow and develop.
Surround yourself with:
Peers who are motivated to make a difference in the lives of those we serve. We serve Salt Lake County and envision a safe and beautiful place for all to live work and have fun. Salt Lake County is about connecting people and championing our community. Community is more than a place….its our heart and service that bring us together.
We encourage a work life balance:
Working for Salt Lake County is more than just a paycheck. A career with /Salt Lake County includes several benefits and perks. We support our employees with 12 Holidays, up to 24 vacation days, 12 sick days and one personal day every year. We work in a hybrid environment giving you flexibility to manage working from home and being in office.
Additional Benefits include:
- Retirement options for hybrid pension/401(k) or 401(k) only with a 10% contribution
Medical coverage including a 100% county paid premium option-Dental and Vision coverage including coverage for adult designees
- Health Savings account with a county contribution up to $1200/year, Flexible Spending Account
- 100% county-paid Long-Term Disability and Short-Term Disability option
- Professional Development
- Plus: Onsite medical clinic, childcare and gym; hospital insurance, pet insurance auto and home insurance and discounts at County facilities.
JOB SUMMARY
Uses, maintains, and develops databases within a wide range of Salt Lake County and Information Technology, public and private databases. Designs, implements and maintains all functions of database systems while maintaining database policies and procedures, data integrity, data extraction, report customization, and analysis. Acts as subject matter expert and assists other DBAs with complex issues.
MINIMUM QUALIFICATIONS
Bachelor’s degree from an accredited college or university in Information Technology, or other closely related field, plus four (4) years of related experience.; Or an equivalent combination of eight (8) years of related education and experience.
PREFERRED CERTIFICATIONS: MCDBA, MTA (Data), MCSA (Data), MCSE (Data)
Due to the nature of this position, the successful applicant must pass a required background check through fingerprinting and enrollment in the continuous RAP Back (Record of Arrest and Prosecution Back) program in accordance with current County Human Resources policy requirements.
ESSENTIAL FUNCTIONS
- Manages the setup and configuration of partitioned tables and partitioned views; creates indexed views.
- Implement deterministic or non-deterministic functions; implement CROSS APPLY by using UDFs; implement CLR functions.
- Monitors performance using Dynamic Management Views, collects output from the Database Engine Tuning Advisor, designs Extended Events Sessions, reviews and interprets Extended Event logs; optimizes Extended Event session settings, uses Activity Monitor to minimize server impact and determines IO bottlenecks, monitors In-Memory OLTP resources.
- Modifies scripts that use cursors and loops into a SET-based operation and designs deterministic and non-deterministic functions.
- Collects and reads execution plans, creates an index based on an execution plan, batch or split implicit transactions, splits large queries, consolidates smaller queries, reviews, and optimizes parallel plans.
- Develops and maintains procedures and strategies to utilize the right lock mechanism for a given task; handle deadlocks; design index locking properties; fix locking and blocking issues; analyze a deadlock scenario; design appropriate isolation level, including Microsoft ActiveX data objects defaults; design for locks and lock escalation; design transactions that minimize locking; reduce locking contention; identifies bottlenecks in data design; design appropriate concurrency control, such as pessimistic or optimistic.
- Implements the proper data types and can select appropriate data types, including BLOBs, GUIDs, XML, and spatial data; develops a Common Language Runtime (CLR) data type; implements appropriate use of @Table and #table; determines values based on implicit and explicit conversions.
- Manage transactions; ensure data integrity by using transactions; manage distributed transaction escalations; design savepoints; design error handling for transactions, including TRY, CATCH, and THROW.
- Develops optimal strategies for clustered indexes; analyze index usage; optimize indexes for workload, including data warehousing and OLTP; generate appropriate indexes and statistics by using INCLUDE columns; create filtered indexes; implement full-text indexing; implement columnstore indexes; optimize online index maintenance.
- Creates stored procedures and other programmatic objects; implements different types of stored procedure results; creates a stored procedure for the data access layer; analyzes and rewrites procedures and processes; program stored procedures by using T-SQL and CLR; implement parameters, including table-valued, input, and output; implement error handling, including TRY…CATCH; configure appropriate connection settings.
- Develops and maintains an optimal strategy for using temporary objects, including table variables and temporary tables; define alternatives to triggers; define data version control and management; implements @Table and #table appropriately; create calculated columns; implement partitioned tables, schemas, and functions; implement column collation; implement online transaction processing (OLTP); implement columnstore and sparse columns.
- Creates constraints on tables, defines constraints, modifies constraints according to performance implications, implements cascading deletes, and configures constraints for bulk inserts.
- Design indexes and data structures; design filtered indexes; design an indexing strategy, including column store, semantic indexes, and INCLUDE; design statistics; assess which indexes on a table are likely to be used, given different search arguments (SARG); design spatial and XML indexes.
- Develops strategies to maximize concurrency; define a locking and concurrency strategy; design a transaction isolation strategy, including server database and session; design triggers for concurrency.
- Set up and configure partitioned tables and partitioned views; create indexed views.
- Applies data design patterns; develop appropriately normalized and de-normalized SQL tables; design transactions; design views; implement GUID as a clustered index appropriately; design temp tables appropriately, including # vs. @; design an encryption strategy; design table partitioning; design a BLOB storage strategy, including filestream and filetable; design tables for In-Memory OLTP.
- Interprets performance monitor data; integrates performance monitor data with SQL Traces.
- Tunes a poorly performing query, including avoiding unnecessary data type conversions; identifies running queries; reviews and optimizes code; analyzes execution plans to optimize queries; tunes queries using execution plans and Microsoft Database Tuning Advisor (DTA); optimizes queries using pivots and common table expressions (CTE); design database layout to optimize queries; implement query hints; tune query workloads; implement recursive CTE; implement full text and semantic search; analyze execution plans; implement plan guides.
- Inspects physical characteristics of indexes and performs index maintenance; identifies unused indexes; implements indexes; optimizes indexes, including full, filter, statistics, and force.
- Implements data control language statements appropriately, troubleshoots connection issues, implements execute as statements, implements certificate-based security, creates loginless users, defines appropriate database roles and permissions, implements contained users, implements cross db ownership chaining, implements schema security, implements server roles.
- Design a table data integrity policy, including checks, primary key, foreign key, uniqueness, XML schema, and nullability; select a primary key.
KNOWLEDGE, SKILLS AND ABILITIES (KSA)
Knowledge of:
- Multiple databases, specifically, Microsoft SQL, Oracle, Informix, and DB2
- SQL programming language, with the ability to create SQL queries, stored procedures, and functions
- Troubleshooting and resolving database integrity issues, performance issues, blocking and deadlocking issues, replication issues, log shipping issues, connectivity issues, and security issues
- Backups, restores, recovery models, database storage operations, clustering, mirroring, and replication
Skills and Abilities to:
- Communicate effectively both verbally and in writing
- Manage multiple projects simultaneously with a high degree of accuracy and attention to detail
- Think logically and systematically; solve complex problems; effectively apply general principles to specific conditions
- Facilitate projects and meetings as assigned, comfortable working with all levels of the organization
- Analyze business and technical processes and determine ways of making them more efficient
- Remain calm under stress and can quickly adjust, evolve, and multitask between several competing priorities at once
- Maintain confidentiality and professionalism
Due to the nature of this position, the successful applicant must pass a required background check through fingerprinting and enrollment in the continuous RAP Back (Record of Arrest and Prosecution Back) program in accordance with current County Human Resources policy requirements.