Software Engineer (1,2, 3 or Senior) Portland, OR #113599

PacificCorp4 months ago
Portland, OR, United States
On-site
Full-time
Junior Level (1-3 years)

Job Description

Position Overview

Under general supervision, assist in analysis, contribute to system specifications, utilize existing technologies to develop and test engineering, scientific and business applications, operating systems, and file/database servers. Participate in the evaluation of software packages and provide recommendations to management and business clients. Working with significant independence and under general direction, the senior software engineer participates in the 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.

Key Responsibilities

  • Work with senior specialists to design, code, test, and implement complex programs; develop appropriate programs and system documentation according to established IT standards.
  • Assist others to enhance existing systems; participate in client walkthroughs and technical design reviews.
  • Aid in system development planning and monitoring.
  • Participate in design reviews and peer code walkthroughs.
  • Provide client and application support.
  • Participate in development and ensure conformance to performance optimization and interoperability standards and requirements.
  • Develop subject matter expertise through participation in consultation with clients and IT in support of the company's IT strategy and overarching business requirements.
  • Participate with IT teams to identify technical deficits and improvement opportunities in current practices and procedures.
  • Apply industry standard techniques such as automated unit testing, test-driven development, continuous integration and iterative development.
  • Act as a subject matter resource and consult with clients and IT in support of the company's IT strategy and overarching business requirements.
  • May act as senior contributor or technical lead on small to mid-sized projects.
  • Architect, design, code, test, document, implement and maintain more complex application programs and interfaces.
  • Provide technical support; perform problem determination and investigation; implement upgrades for developed applications.
  • Perform or assist in research and fact-finding to develop or modify application programs.
  • Collaborate with IT teams from applications and infrastructure to identify technology deficiencies and improvement opportunities.
  • Consult with application users in developing functional/technical specifications.
  • Evaluate user requests for new or modified computer applications and associated interfaces to determine feasibility, cost, time required, compatibility with current systems and computer capabilities.

Required Qualifications

  • Bachelor's Degree in Computer Science, Mathematics, Information Systems or a related field; or equivalent education and experience.
  • Experience in business software application design, development, and implementation.
  • Knowledge of Object-Oriented Design (OOD) methodologies and Object-Oriented languages.
  • Consultative aptitude with strong communication and interpersonal skills to understand client needs, define requirements, and provide effective solutions.
  • Familiarity with current and emerging technologies, tools, and applications.
  • Understanding of structured analysis and technical design concepts.
  • Familiarity with common industry architectural patterns and software design patterns.
  • Ability to work in a zero-code-ownership environment where team members can modify any source file at any time.
  • Minimum of three years of experience in business software application design, development, and implementation.
  • Experience in an environment whose scope, size, and complexity are comparable.
  • Project management skills with the ability to develop and monitor work agreements, budgets, specifications, schedules, and deliverables.
  • Knowledge of deployment topologies ensuring secure, highly available systems.
  • Minimum of four years of experience in business application design, development, and implementation.
  • Minimum of six years of experience in business software application design, development, integration and/or installation.
  • Advanced knowledge of programming in client/server or web development environments.
  • Advanced knowledge of open systems object design methodologies, architectural methodologies, security practices, and integration techniques.
  • Advanced knowledge of relational database technology, structured analysis concepts, and software design patterns.
  • Ability to prioritize and handle multiple tasks and projects concurrently.
  • Advanced knowledge of information technology terms, equipment, systems, functions, and major vendors.
  • Effective oral and written communication skills.
  • Strong analytical and problem-solving skills.
  • Availability for periodic on-call responsibilities.
  • Experience integrating Commercial off the Shelf (COTS) solutions within environments with strong change and release management processes.
  • Technical knowledge with hands-on experience in Oracle and Microsoft SQL database development.
  • Technical knowledge with hands-on experience in current computing programming languages.

Preferred Qualifications

  • Experience integrating Commercial off the Shelf (COTS) solutions within environments with strong change and release management processes.
  • Hands-on experience developing with .NET and .NET Core frameworks, with exposure to cross-platform solutions using .NET MAUI.
  • Proficiency in front-end development using React, with an emphasis on building responsive and dynamic user interfaces.
  • Strong background in Oracle database development, including PL/SQL, performance tuning, and data modeling.
  • Experience integrating enterprise systems using Oracle Integration Cloud (OIC), with an understanding of modern cloud-based integration patterns.
  • Solid experience with Microsoft Azure, including services such as App Services, Azure Functions, Azure SQL, and Azure DevOps for CI/CD pipelines.
  • Familiarity with Microsoft development tools and platforms and the ability to adapt to evolving technologies in a hybrid enterprise environment.
  • Understanding of enterprise IT environments, including policies, procedures, and best practices in application development and deployment.

Benefits & Perks

  • Health care
  • Retirement
  • Paid time off
  • Tuition assistance
  • Paid short-term and long-term disability
  • Paid bereavement leave

Required Skills

System Design & Analysis
Continuous Integration & Deployment
React
Oracle Database Development
Microsoft SQL
Agile Methodologies
Application Architecture
Software Development Life Cycle
.NET / .NET Core
Object-Oriented Design