67174: Columbus, OH – IT – EDU – Technical Specialist 2/TS2

Job Title: Python Programmer
NFP Rate: $66.94
Will send resumes to manager on Monday, 12/2 and Wednesday, 12/4.
Onsite interviews only.

Ohio Department of Education
Description of Duties (Primary & Secondary) – List the top 5 and their % of Total Time.

1. Python programming to implement the system and payment processes - 60%
2. Assist with report creation utilizing Python or PowerBI – 25%
3. Business analysis, creating requirements and specifications from business rules – 15%

Candidate requirements:
• 7+ years of Python programming experience, at least 4 of which must be with Python 3.
• At least one project migrating a substantial legacy code base to Python.
• At least one project designing and implementing a software architecture for batch script execution.
Preferred qualifications:
• Experience with Python in Microsoft Visual Studio
• Experience with Microsoft Team Foundation Services (TFS) for source code control, work item management, release management, and/or build processes
• Experience with SQL server databases
• Experience with PowerBI reporting tool

The Department of Education calculates and processes approximately $8 billion of school funding annually.  The data processing systems used are a mix of COBOL and SAS programs; running on an OpenVMS mainframe; reading from Oracle databases, SAS datasets, and flat files; and writing to SAS datasets and flat files.  The Department seeks to modernize this data processing environment by reworking the system to utilize modern technologies, specifically replacing COBOL and SAS on OpenVMS with Python on Windows and better leveraging databases where appropriate.  To this end, the Department seeks a senior programmer/system architect with significant Python 3 expertise, in order to:
• Design a new data processing system and architecture to perform multiple recurring, time sensitive, and mission critical funding processes, each involving multiple programs, calculation steps, and/or data sources.  Goals to improve over the legacy system include, but are not limited to:
◦ Replace all COBOL and SAS code with Python 3 code, potentially augmented with ODE owned reporting tools (e.g. Tableau)
◦ Make most data calculations reusable across multiple payment processes (e.g. as a Python package)
◦ Make the processes configurable so that simple changes (such as constants or multiplication factors that may change each budget biennium) can be changed at run time without requiring code changes and a formal software release.
◦ Make the processes configurable so that different calculation modules and data sources are leveraged depending upon run time parameters such as state fiscal year and payment number.
◦ Producing run time logs for tracing batch file execution
◦ Produce business and operational reports, such payment change tolerances and exception handling.
• Identify, recommend, and assist with implementing a Python 3 distribution (CPython, Anaconda, etc.) appropriate for ODE's needs.
• Work with ODE personnel to review existing legacy COBOL and SAS code to document business rules, system process flow and identify process re-engineering opportunities.
• Replace legacy COBOL and SAS code by writing Python programs to implement the business logic within the context of the new reusable and configurable system architecture.
• Assist and/or replace legacy COBOL code that generate dynamic financial reports on the ODE web site with modern technologies (e.g. Python, Tableau).
• Leverage the Microsoft Visual Studio IDE and Team Foundation Server for source control, release management, and system build.
• Mentor ODE programmers as they make the switch from COBOL/SAS to Python, assisting them as needed in rewriting legacy COBOL and SAS code and assisting with establishing Python 3 team development standards.

Comments are closed.