(Any one position may not include all of the duties listed, nor do the examples cover all of the duties that may be performed.)
Develops data and/or applications solutions, which may include utilization of supportive software, data management platforms, database management systems, server applications, and/or web-based development systems;
Confers with departmental or divisional personnel to analyze current operational procedures, document potential problems, and identify specific data input and output requirements for software system development;
Analyzes requirements of data and/or application solutions, such as licensing requirements, data requirements, peripheral equipment, maintenance support, server requirements, access on mobile devices, or other system interfaces and requirements to determine feasibility of system designs within time and budget constraints;
Reviews the outline of the new or revised business system process(es) and makes recommendations for improvements by defining the hardware and software requirements of the proposed system(s) or process(es); evaluates integration requirements for data and applications and supportive databases; develops solutions for integration and/or extraction of data for cross-platform dependencies among application systems; prepares cost estimates and project timelines for implementation;
Consults with technical staff to evaluate business processes, needs, expectations, and functional requirements and translates into technical requirements; designs and proposes solutions to streamline or enhance business functions/processes;
Develops solutions for citywide data integration and management; creates synthesized data models, transformations and visualizations for deployment of analytics to meet the business or operational needs of the City;
Researches third-party software systems for feasibility of design and compatibility and adaptability with existing architecture and business processes; reviews proposed hardware and software solutions and recommends selection to management for approval;
Formulates, designs, configures, and/or modifies software systems using scientific analysis to predict and measure outcome and consequences of design;
Develops and directs software system testing procedures, programming, and documentation;
Serves as senior consultant for database design, implementation, and administration, including security, backup, recovery, and maintenance; utilizes administrative rights within software applications to mass import updates to an application system;
Advises departmental or divisional personnel in their technology needs with regard to data corruption, security issues, computer viruses, and hardware and software redundancy;
Consults with staff members to evaluate interface between hardware and software and operational and performance requirements of software system; analyzes system growth and evaluates processing efficiency;
Plans and prepares technical reports, memoranda, and instructional manuals as documentation of system development;
Makes recommendations to management regarding the planning, development, and coordination of software system development projects;
Performs engineering cost/benefit analysis to verify potential effectiveness of new products; conducts technical research for building new designs, developing business cases, selling ideas to management, and gaining commitment for new system enhancements;
Mentors business systems analysts and senior programmer analysts in their work and individual projects as requested by management;
Participates in appropriate professional activities to stay abreast of existing and emerging technologies.