|Reference # : ||18-00046
||Title : ||Software Developer (IT) 3|
|Experience Level : ||
||Start Date / End Date : ||03/01/2018 / 03/02/2019
| Description |
|Note: See Additional Position Information document for specialized position requirements.|
Software Developer (IT) 3:
General Position Overview:
Summary: The role of the Software Developer is to design, develop, and test operating systems-level software, compilers, and network distribution software for computing applications. Set operational specifications and formulate and analyze software requirements. May design and develop embedded systems software. Apply principles and techniques of computer science, engineering, and mathematical analysis.
NOTE: Education and Experience requirements are specific to this CWSD/position title, for use exclusively within BPA?s IT organization, and are not transferable to other BPA organizations. Managers may require more education and/or experience (see API document) for specific positions.
? Bachelor of Science in Information/Computer Technology or a related technical discipline is preferred.
?Level 3 requires 7+ years combination of education, certifications, and/or work experience in Computer/Information Technology or related field. Applicable certifications will count towards 1 year of experience and each applicable college degree will count towards 2 years of experience.
? Experience working in a large production environment.
Typical Tasks may include:
? Implement and integrate new system architecture into an existing environment
? Modify existing software to correct errors, to adapt it to new hardware or to upgrade interfaces and improve performance.
? Develop or facilitate software system testing or validation procedures.
? Facilitate software programming and development of documentation.
? Consult with customers or other departments on project status, proposals, or technical issues, such as software system design or maintenance.
? Analyze information to determine, recommend, and plan installation of a new system or modification of an existing system.
? Consult with engineering staff to evaluate interface between hardware and software, develop specifications and performance requirements, or resolve customer problems.
? Design or develop software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
? Design, develop and conduct automated unit and regression tests.
? Design, develop, implement, maintain and support applications.
? Prepare reports or correspondence concerning project specifications, activities, or status.
? Confer with data processing or project managers to obtain information on limitations or capabilities for data processing projects.
? Store, retrieve and manipulate data for analysis of system capabilities and requirements.
? Install and configure hardware including operating system and additional software to configure for optimal use.
? Provide technical support in production environments, to include troubleshooting reported issues and system architectures to include data management, network management, and overall client architectures.
? Identify standard monitoring requirements and scripting or applying additional setting requirements
? Troubleshoot hardware and system level problems, performance and interoperability problems and workflow issues.
? Document implementation guidelines and installation guidance. Actively participate in implementation activities.
? Perform fit gap analysis and propose implementation approaches.
? Research new and emerging technologies to determine their applicability to application development and maintenance, as well as for support of the needs of operations.
? Provide demonstrations of emerging technologies to acquaint BPA staff with capabilities and applicability to business solutions.
? Perform application/process management, install/patch applications, troubleshoot connectivity issues, monitor performance and tune in complex three-tier architectures (client web interface, application engine, database
? Stand-up, configure and maintain application environments.
? Code, test, configure and maintain various vendor and in-house applications.
? Consult with managerial, engineering, and technical personnel to clarify program intent, identify problems, and suggest changes.
? Compile and write documentation of program development and subsequent revisions, inserting comments in the coded instructions so others can understand the program.
? Prepare detailed workflow charts and diagrams that describe input, output, and logical operation, and convert them into a series of instructions coded in a computer language.
? Knowledge of the utility industry
? Knowledge of application design, development, deployment and maintenance
? Experience troubleshooting workflow and integration issues.
? Experience interpreting design specifications, coding software, designing, developing, and conducting unit tests.
? Experience translating requirements into computer source code.
? Expert knowledge of programming languages.
? Skilled in writing well-tuned stored procedures for Server.
? Work on-call as required and carry a BPA issued cell phone and be reachable after hours to accommodate scheduling, emergency, and on-call issues.
? Carry out assigned tasks in a professional demeanor reflected in excellent written and oral communication skills, listening skills, patience, analytical reasoning and problem solving abilities.
? Effectively communicate technical information verbally and in writing to technical and non-technical users
? Meet timelines, milestones, and deliverables and provide timely (weekly) status updates.
? Provide a sustainable IT infrastructure by supplying cross training and functional documentation.
? Understand and follow established processes and procedures including Change Management, Work Tracking and Time Management.
? Keep abreast of technology advances, upgrades and the latest trends in best practices
Typical Work Activities may include any of the following:
? Interacting with Computers-Using computers and computer systems (including hardware and software) to program, write software, set up functions, enter data, or process information.
? Making Decisions and Solving Problems-Analyzing information and evaluating results to choose the best solution and solve problems.
? Processing Information -Compiling, coding, categorizing, calculating, tabulating, auditing, or verifying information or data.
? Getting Information-Observing, receiving, and otherwise obtaining information from all relevant sources.
? Documenting/Recording Information-Entering, transcribing, recording, storing, or maintaining information in written or electronic/magnetic form.
? Evaluating Information to Determine Compliance with Standards-Using relevant information and individual judgment to determine whether events or processes comply with laws, regulations, or standards.
? Organizing, Planning, and Prioritizing Work-Developing specific goals and plans to prioritize, organize, and accomplish work.
? Establishing and Maintaining Interpersonal Relationships-Developing constructive and cooperative working relationships with others, and maintaining them over time.
? Thinking Creatively-Developing, designing, or creating new applications, ideas, relationships, systems, or products, including artistic contributions.
Knowledge ? The specific position may require any or all of the following:
? Computers and Electronics ? Knowledge of electronic equipment and computer hardware and software, including applications and programming. Requires an understanding of the IT working environment sufficient to explain technical issues to a disparate range of technical and non-technical clients.
? Technical -- Technical knowledge and experience with a variety of programming languages, operating systems, and database technologies.
? Engineering and Technology ? Knowledge of the practical application of engineering science and technology. This includes applying principles, techniques, procedures, and equipment to the design and production of various goods and services.
? Mathematics? Knowledge of arithmetic, algebra, geometry, calculus, statics, ad their applications.
? Administration and Management ? Knowledge of business and management principles involved in strategic planning, resource allocation, production methods, and coordination of people and resources.
Skills - The specific position may require any or all of the following:
? Active Listening, Critical Thinking, Reading Comprehension, Speaking, Systems Analysis, Complex Problem Solving , Judgment & Decision Making , Programming, Systems Evaluation , Writing
Abilities ? The specific position may require any or all of the following:
? Comprehension/Oral Communication - Ability to follow complex procedures and explain technical solutions to a wide range of clients, providing advice and information to individuals with varying degrees of ability with Information Technologies.
? Information Ordering ? Ability to arrange things or actions in a certain order or pattern according to a specific rule or set of rules (e.g., patterns of numbers, letters, words, pictures, mathematical operations).
? Deductive Reasoning ? Ability to apply general rules to specific problems to produce answers that make sense.
? Analytical Thinking, Attention to Detail, Initiative, Achievement/Effort, Cooperation, Adaptability/Flexibility, Persistence, Stress Tolerance, Dependability, Independence.