MidAmerican Energy Company Senior Software Engineer in Des Moines, Iowa
The senior software engineer provides advanced technical expertise and guidance in the architecture, design, programming, testing, documentation and implementation of complex computer applications and systems. Evaluates software packages, provides recommendations to management and business clients, and identifies best technology solutions. Identifies future needs for key technologies and techniques and develops plans for adoption. This is considered a leadership position within the application development organization.
Primary Job Duties and Responsibilities (Essential Job Function)
Act as the technical lead for highly complex projects related to the development of new systems, architecture, applications or technology capabilities in support of business goals.
Hold primary technical responsibility for software development of business critical applications and integration processes. Command proficiency in skills required to achieve desired technical and business outcomes (30%).
Perform project planning, system analysis, software design and coding, testing, documentation, implementation and research activities as necessary for software engineering projects. (20%)
Provide technical leadership to staff; may direct work of software engineers and various analysts in the completion of assigned projects. Plan, schedule and assign work based on established priorities. (15%)
Oversee software development and ensure conformance to performance optimization and interoperability standards and requirements. Ensure adherence to secure development lifecycle practices and policies. (10%)
Act as the subject matter expert, and consult with clients on company's IT strategy and business requirements. (5%)
Collaborate with IT teams from applications and infrastructure to identify technology deficiencies and improvement opportunities in practices and procedures. (5%)
Coach and mentor other team members in technical matters, software development practices, project management techniques and security implementations. (5%)
Stay current with industry standards techniques for software development, and apply them to development, testing, integration and reporting processes where appropriate. (5%)
Perform any additional responsibilities as requested or assigned. (5%)
Bachelor's degree in management information systems (MIS), computer science, or related technical field; or equivalent work experience. (Typically six years of related, progressive work experience would be needed for candidates applying for this position who do not possess a bachelor's degree.)
A minimum of six years of experience in business software application design, development, integration and/or installation.
Advanced knowledge of programming, integration and application security models; and proficiency with a variety of software development tools.
Experience in the industry, or in an environment whose scope, size and complexity are comparable.
Expert knowledge of open systems object design methodologies, architecture methodologies, security practices and integration techniques. Advanced knowledge of relational database technology, structured analysis concepts, and software design patterns.
Effective project management skills and ability to prioritize and handle multiple tasks and projects concurrently.
Business analysis aptitude including communications and interpersonal skills enabling an understanding of client's needs.
Knowledge of information technology terms, equipment, systems, functions and major vendors.
Experience integrating large disconnected enterprise-class systems in a robust, fault-tolerant manner consistent with industry standards.
Able to work in a zero-code-ownership environment where the team members can modify any source file at any time.
An expert understanding of deployment topologies (i.e. ensuring secure, highly available systems).
Effective oral and written communication skills.
Effective analytical, problem-solving and decision-making skills.
Availability for periodic on-call responsibilities.
Experience integrating Commercial off the Shelf (COTS) solutions within an environment with strong change and release management processes and procedures.
Technical knowledge with hands-on experience in Oracle and Microsoft SQL database development.
Technical knowledge with hands-on experience in .NET and other current computing programming languages.
Technical knowledge with hands-on experience in Microsoft BizTalk Server, Microsoft SharePoint, Microsoft SQL Reporting Services and Oracle business intelligence / reporting.
Understanding of company's existing IT environment and of applicable company policies, practices, and procedures.
Employees must be able to perform the essential functions of the position, with or without an accommodation.
All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability or veteran status.
Job: *Information Technology
Title: Senior Software Engineer
Location: IA-Des Moines
Requisition ID: 1801284