Senior Programmer / Developer
Enable Midstream Partners
Oklahoma City, OK
Serve on the development team to develop the infrastructure supporting enterprise integration and data pipeline applications that incorporate both Microsoft .NET and Open Source technology stacks.

This position requires comprehensive knowledge within a functional area. Performs work under general direction and work is reviewed upon completion for adequacy in meeting objectives and ensuring compliance with processes, standards and policies of the organization. Provides technical solutions to a wide range of difficult and complex problems. Solutions are imaginative, thorough, practical and consistent with the objectives of the organization. This position may train and mentor less experienced professionals.

Essential Duties & Responsibilities:
Independently produces code for application integrations and data pipelines that have been designed, documented and reviewed by team.
Create production-ready code for integrations and data pipeline that:
Is testable, readable, and well documented
Is deployable into cloud environments (e.g. Microsoft Azure)
Communicates effectively with business customers.
Contributes to producing or confirming estimates that are accurate, consistent, and achievable, which lead to the delivery of a high-quality product.
Provide comprehensive support for complex and/or advanced application systems and business processes.
Design, develop, analyze, code, configure, test, debug, maintain and refine business applications to fit customer requirements for complex projects.
Coordinate revisions to application source code and components for corrections, enhancements or environment changes (internally or through third-parties).
Plan or support all phases of moderately complex projects.
Lead the development life cycle which includes solution design, development, integration, configuration, testing, and implementation with Waterfall and/or Agile methodologies.
Proactively advise internal customers on project timelines for all phases of technical design projects. Function as technical resource on appropriate projects throughout the full project lifecycle.
Provide complex application solutions by identifying business requirements; research potential solutions; make recommendations to meet end-user business objectives.
Recommend improvements to business processes as supported by application systems.
Create and run test scripts to identify errors and confirm business specifications have been achieved. Analyze and validate code developed in-house or by third-parties for root cause and make recommendations to revise programs.
Maintain understanding of future direction of application system or development technologies/products.
Utilize project management skills to carry out responsibilities.
Train end-users on applications and tools following implementation.

Minimum Education & Experience:
Bachelor's degree in Computer Science or related field. In lieu of a degree, six (6) years' directly related experience will be considered.
Five (5) years’ directly related experience.
Relevant developer certification(s) preferred.
Knowledge of DataBricks, Hive a plus.

Knowledge, Skills, Abilities:
Comprehensive knowledge of .NET WebAPI, WCF, .NET Core, Azure Cloud Platform, Modern Design Patterns, SQL Server, Oracle, JSON API, Azure App Insights, Continuous Integration (CI/CD), Azure DevOps, git, JIRA, Swagger / Open API Specification (OAS).
Comprehensive knowledge of SOA, C#, TSQL and PSQL.
Comprehensive knowledge of HTTP, HTTPS, SOAP, REST and XML.
Knowledge of synchronous, asynchronous messaging patterns.
Knowledge of network architecture.
Strong data management skills; ability to audit, format, model and analyze large data sets.

Physical Requirements:
Sedentary to light work exerting up to 10 pounds of force occasionally, and/or negligible amount of force occasionally to lift, carry, push, pull or otherwise move objects.
Ability to view computer screen, sit, stand or walk for long periods of time.
Ability to operate a computer, copy machine, fax machine, calculator, telephone and other miscellaneous office equipment.

Working Conditions:
Ability to produce quality work in a fast-paced environment with high daily pressure to meet deadlines.
Ability to work non-standard work hours as needed or required to meet established deadlines.
Ability to work indoors, in an office environment, regardless of whether cubicle, open office or private office.
Subject to normal office noise levels.