General Purpose of Job
The Programmer role is responsible to define, develop, test, analyze and maintain new and current software applications in support of business requirements. This includes writing, coding, testing and analyzing software programs and applications. This position will also research, design, document and modify software specifications throughout the production life cycle; conduct requirement‐gathering meetings and produce technical and business documentation.
The following includes the minimum job requirements and essential duties for this position. Reasonable accommodations may be made to enable qualified individuals with disabilities to perform the essential functions. Some job requirements may exclude individuals that cannot be reasonably accommodated or who pose a direct threat or significant risk to the health and safety of themselves or other employees.
Thorough understanding of structured programming principles and methods, system analysis techniques, system design, industry standard testing principles, system implementation, user training and follow up; utilization of Apple Macintosh and/or Windows personal computing systems.
Must be able to author software development lifecycle documentation including user requirements, high‐level/detailed design, test plan/scripts, and an implementation plan.
Must be able to create, maintain and update existing software applications written with a variety of programming languages and development tools. Development updates must be clearly documented and commented.
General understanding of multiple computer platform functions to include operating systems, utilities, shared and peer function. Knowledge of systems backup, recovery and software application security.
General understanding of relational database and client‐server concepts; familiar with a range of programming environments such as: Net framework; Windows; Visual Studio, .Net/C++/C#, HTML, ODBC, ASP.Net, SQL, XML, Visual Basic, VB.Net; GE Magik, Python, PowerShell, ability to continue learning and implement relevant alternate programming tools.
Ability to acquire expertise to support corporate business systems such as CIS, Business Accounting;
Interactive Voice Response (IVR) System Interfaces; Outage Management and GIS System Interfaces; SCADA Interfaces; Crystal Reports; Microsoft .NET, fuel systems, ESRI GIS, and asset management tools.
Demonstrated communication skills; ability to accurately prepare all types of business correspondence, design and produce reports and training manuals; ability to analyze and interpret job related business periodicals and technical manuals.
Excellent customer service orientation and interpersonal skills for effective interaction with others at all levels of the organization; ability to express technical information clearly and simply while working closely with other personnel.
Ability to complete assignments and meet deadlines; work independently and in a team environment; ability to exercise good judgment and discretion in making independent decisions commensurate with responsibilities.
Ability to maintain highly confidential information; be flexible and receptive to changing priorities.