Description

A Senior Programmer is responsible for leading and/or working on the most complex IT applications design, documentation, development, modification, testing, installation, implementation and support of new or existing applications software. This classification may also plan, install, configure, test, implement and manage a systems environment in support of an organization’s IT architecture and business needs. Common organizational or functional industry position titles for programmers include but are not limited to programmer analyst, applications developer, software engineer, software developer, software quality assurance specialist, systems programmer, systems software programmer, database administrators, computer systems analysts, systems engineer, systems software engineer. The Senior Programmer, in development of applications software, is responsible for analyzing and refining systems requirements; translating systems requirements into applications prototypes; planning and designing systems architecture; writing, debugging and maintaining code; determining and designing applications architecture; determining output media/formats; designing user interfaces; working with customers to test applications; assuring software and systems quality and functionality; integrating hardware and software components; writing and maintaining program documentation; evaluating new applications software technologies; and/or ensuring the rigorous application of information security/information assurance policies, principles and practices to the delivery of application software services. The Senior Programmer, in development of operating systems, is responsible for analyzing systems requirements in response to business requirements, risks and costs; evaluating, selecting, verifying and validating the systems software environment; evaluating, selecting and installing compilers, assemblers and utilities; integrating hardware and software components within the systems environment; monitoring and fine-tuning performance of the systems environment; evaluating new systems engineering technologies and their effect on the operating environment; and/or ensuring that information security/information assurance policies, principles and practices are an integral element of the operating environment.

Skills Required

The Senior Programmer will possess knowledge and experience in applications software development principles and methods sufficient to participate in the design, development, testing and implementation of new or modified applications software; operating systems installation and configuration procedures; organization’s operational environment; software design principles, methods and approaches; principles, methods and procedures for designing, developing, optimizing and integrating new and/or reusable systems components; pertinent government regulations; infrastructure requirements, such as bandwidth and server sizing; database management principles and methodologies, including data structures, data modeling, data warehousing and transaction processing; functionality and operability of the current operating environment; systems engineering concepts and factors such as structured design, supportability, survivability, reliability, scalability and maintainability; optimization concepts and methods; establish and maintain cooperative working relationships with those contacted in the course of the work; and speak and write effectively and prepare effective reports.

Skills Preferred

Ability to code, tests and debug complex web/mobile applications to create new business applications and interfaces or maintains/modifies existing business applications utilizing .NET Core components (including ASP.NET, VB.NET, and other integrations), C#, jQuery, HTML5, CSS, JavaScript, AJAX, JSON, XML, and Model View Controller (MVC). Lead in the identification, analysis, and resolution of complex application problems. Store procedures, functions, and queries to extract necessary data elements. Write complex codes using Oracle PL/SQL or Microsoft T-SQL and documents what the code will accomplish. Write web services to interface with multiple internal and external systems. Perform database management such as CRUD-operations, and loads data into the database tables. Writes business class layer by using object-oriented programming language e.g., C#, Java, etc., and documents what the code will accomplish. Create Reports using Report Builder or PowerBI Desktop. Troubleshoot and test newly developed programs and works to ensure user interface functionality is consistent with system design and web programming development standards. Ability to create batch jobs (console application) to automate daily tasks from different databases. Design table structures, constraints, triggers, and sequences as needed for data and/or application validations.

Experience Required

This classification must have a minimum of seven (7) years of experience in electronic data processing systems study, design, and programming. At least four (4) years of that experience must have been in a lead capacity.

Experience Preferred

- Proficiency in state application systems. - Experience with Blazor, or other similar web frameworks that allow developers to build interactive web applications using C# and HTML. - Familiarity with cloud computing platforms such as Azure and AWS. - Have an understanding of Agile Development principles and DevOps practices.

Education Required

This classification requires the possession of a bachelor’s degree in an IT-related or Engineering field. Additional qualifying experience may be substituted for the required education on a year-for-year basis.

Education Preferred

Bachelor's Degree in Computer Science, Information Systems, or closely related field.

Additional Information

Live Scan Required, Performed by DCFS.

Education

Any Graduate