Works throughout the software development life cycle and performs in a utility capacity to create, design, code, debug, maintain, test, implement and validate applications with a broad understanding of a variety of languages and architectures. Analyzes existing applications or formulate logic for new applications, procedures, flowcharting, coding and debugging programs. Maintains and utilizes application and programming documents in the development of code. Recommends changes in development, maintenance, and system standards. Creates appropriate deliverables and develops application implementation plans throughout the life cycle in a flexible development environment.
- Develops moderately complex code using back end programming languages within multiple platforms as needed in collaboration with business and technology teams for internal and external client software solutions.
- Designs, creates, and delivers moderately complex program specifications for code development and support on multiple projects/issues with a wide understanding of the application / database to better align interactions and technologies.
- Provides broad and in-depth knowledge of analysis, modification, and development of complex code/unit testing in order to develop concise application documentation. Performs and advises on testing, validation requirements, and corrective measures for complex code deficiencies and provides systemic proposals.
- Provides advice to leadership on the design, development, and enforcement of business / infrastructure application standards to include associated controls, procedures and monitoring to ensure compliance and accuracy of data.
- Applies a full understanding and in-depth knowledge of procedures, methodology and application standards to include Payment Card Industry (PCI) security compliance.
- Develops, administers, and recommends billable hours and resource estimates on complex initiatives, projects, and issues.
- Assists with on-the-job training and provides in-depth expertise and advice to software engineers.
- Requires at least a Bachelor’s degree in Computer Science, Electrical Engineering, or related field followed by six years of progressive experience as software engineer, developer or related position.
- Experience must include the following experience and skills:
- Operating Systems: Linux distributions (one or more of the following: Ubuntu, CentOS/RHEL, Amazon Linux), Microsoft Windows;
- Database: Design, familiarity with DDL and DML for one or more of the following databases: Oracle, MySQL, MS SQL Server, IMS, DB2, Informix, Hadoop;
- Back-end technologies (one or more of the following): Python, Perl;
- Development Tools (one or more of the following): Eclipse, Visual Studio;
- Machine Learning (one or more of the following): Python, R, Matlab, Tensorflow, DMTK;
- ETL Tools: Ab-Inito, Data Stage;
- CICD Tools: Git, Gitlab, Bit Bucket, Jenkins;
- Big Data: Hive, Pig.
Cincinnati Bell Technology Solutions provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, color, religion, gender, sexual orientation, gender identity or expression, national origin, age, disability, genetic information, marital status, amnesty, or status as a protected veteran in accordance with applicable federal, state and local laws.