Under general supervision, to automate and streamline the County's operations and processes, and design, develop, integrate, test, and deploy automation scripts/tools using proven or emerging technologies in a variety of technologies and environments; and to gather requirements, prototyping, and automating deployment solutions.
Sufficient education, training, and experience to demonstrate the possession and direct application of the following knowledge and abilities:
Training and Experience Note:
Possession of aBachelor's degree from an accredited college in Programming/Systems or Computer Science or other related field,
And
Six (6) years of experience working in systems and/or IT operations. Three (3) years of this experience must be at a level comparable to the County's Software Engineer classification.
OR
Training and experience equivalent to the possession of a Bachelor's degree. Relevant analytical, administrative, lead, supervisory or management experience that includes interpreting rules and regulations, gathering data and formulating recommendations, and report writing can substitute for education on a year-for-year basis;
And
Eight (8) years of experience working in systems and/or IT operations. Three (3) years of this experience must be at a level comparable to the County's Software Engineer classification.
Special Requirements:
-
Ability to travel to alternate locations in the course of work. If driving, possession of a valid California Driver's License prior to appointment and the ability to qualify for and maintain a County driver authorization.
-
Depending on the position, related certifications may be desirable.
Knowledge of:
-
A broad range of hardware and software products;
-
Design or implementation of a platform; includes categories such as automation, features, security, manageability, etc.;
-
System and software engineering;
-
Industry best practices, trends, and standards;
-
Custom test automation frameworks;
-
Technical design specifications and points of integration;
-
Methods to integrate solutions;
-
Testing strategy for individual solutions and custom test automation frameworks;
-
Change requests and scheduling for technical standards compliance and deployment;
-
Configuration Management practices;
-
Report and presentation preparation;
-
Principles of training and staff development;
-
Cloud platforms;
-
Test cases creation and evaluation;
-
Expert level programming experience with multiple languages;
-
Tools, systems and reusable components, including APIs, Web portals, databases, and virtual servers hosted on a Cloud environment;
-
System tuning for maximum performance and efficiency;
-
New technologies that may enhance client's business capabilities;
-
Automated solutions and processes for applications in data centers and in the cloud;
-
All aspects of software development;
-
Operational requirements for planning purposes;
-
Proofs of concepts;
-
Evaluation of systems and platforms and performance improvement.
Ability to:
-
Make relevant, specific, and high value recommendations to the design or implementation of a platform; includes automation, features, security, manageability, etc.;
-
Design, develop, test, and deploy systems using proven or emerging technologies, in a variety of technologies and environments;
-
Code and script at an advanced level;
-
Work with cloud platforms;
-
Use a wide variety of open source technologies and cloud services;
-
Troubleshoot issues ranging from system resources to application stack traces;
-
Integrate solutions;
-
Manage change requests, schedules, technical change, verifies testing results, and monitors technical standards compliance and deployment;
-
Maintain, update, and communicate the Configuration Management Data Base (CMDB);
-
Prepare written reports and presentations;
-
Provide formal training and coaching to IT staff;
-
Develop tools, systems and reusable components;
-
Tune systems for performance and efficiency;
-
Keep apprised of new technologies that may enhance business capabilities;
-
Design and develop automated solutions and processes for applications in data centers and in the cloud;
-
Perform tasks associated with software development;
-
Estimate operational requirements for planning purposes;
-
Conduct and evaluate proofs of concept;
-
Evaluate test results;
-
Program in multiple languages at an advanced level;
-
Evaluate systems and platforms and provide recommendations for improving performance.