Software Engineer 311018
Permanent Direct Hire Opportunity in Portland, OR
- The Software Engineer develops and installs software solutions in support of the business.
- Has technical expertise in one or more highly specialized areas of applications systems and is responsible for full life cycle of software development process: design, code, test, deploy, document and maintain application software and provides development support to Senior Software Engineer
- Prepares operational feasibility by evaluating analysis, problem definition, requirements, solution options. Proposes solution to the Senior Software Engineer.
- Document and develop user requirements. Prepare flowcharts, layouts, diagrams, charts, code comments and clear code to Senior Software Engineer for comment and approval.
- Prepare and install solutions using system specifications, standards, and programming.
- Improves operations by conducting systems analysis; recommending changes in policies and procedures to the Senior Software Engineer.
- Obtains required information from vendors; recommending purchases to the Senior Software Engineer. Assists in the testing and approving of products.
- Works under the direction of project manager to ensure the accurate and timely completion of assigned tasks and projects.
- Responsible for one or more major business applications systems including ongoing customer and technical support. Gather and analyze information for correcting or improving systems. Recommend changes to Senior Software Developer to ensure the ongoing operational integrity of the system.
- Coordinate with customer and Information Technology management to establish resource levels and priorities to ensure appropriate levels of product and customer support are in place.
- Research and evaluate emerging technologies and make recommendations to Senior Software Engineer for inclusion within Agency’s development environment.
- Bachelor’s degree in Computer Science, or related technical field.
- Minimum of three years of experience working in an Information Technology group or R&D software lab, with two or more years in a software development capacity Or any equivalent combination of experience and training.
- Demonstrated ability to communicate effectively through written or verbal communication. Ability to work independently or as a member of a software development team.
- Knowledge with the following : Python, Java, SQL Queries and able to do Scripting
- Knowledge of standard operating environment: UNIX/Linux, Windows
- Knowledge of project management tools and techniques.
- Knowledge and practical work experience of network and database technologies and protocols: Internet/Intranet, cx_Oracle, Psycopg, ODBC, TCP/IP
- Experience with object oriented technology theory, design and development and structured program development technique.
- Experience with Relational Database technology theory, design, development, and access using SQL with an industry standard RDBMS: Orcle, SQL Server, PostgreSQL/PostGIS
- Fluent in Java programming language, Java SDK, and Java swing control objects.
- Experience in developing Restful API, JSON, Apache Fluent API framework, and HTTP error handling.
- Hands on coding experience with low level smart card APDU calls.
- Experience using source code repositories, i.e., Mercurial, Subversion, Git.