Title: Sr. Software Developer – C# & .Net
Job #: JP9257
Location: Portland, OR
Job Length: Multi-year opportunity with a full benefits package
Essential Duties and Responsibilities:
This position will develop and support our information systems. The Software Developer will code, test, build, configure, migrate, maintain, and document various vendor and in-house applications to provide business solutions using a Relational Database Management System (RDBMS), graphical user interfaces and web services with software tools provided on a Windows platform. This position involves interpreting design specifications, coding software, developing and conducting unit tests, documenting and assisting with system installation and deployment procedures, following testing and change management procedures, producing system documentation requirements and working on a development team using a mix of Agile and Waterfall development methodologies.
- With manager/ Lead oversight and approval:
- Design, write and deploy .NET applications that use Web Services and socket-based protocols;
- Design Web application development using ASP.NET, Angular, Node.JS and C#;
- Design, develop and conduct automated unit and regression tests;
- Provide server and IIS setup/configurations to support n-tier operations;
- Design and development of n-tier applications;
- Design and support of client/server applications written in other development languages (VB/C++/etc.);
- Document and implement software deployment procedures;
- Design, document, and communicate effective technical solutions meeting end-user requirements;
- Stand up, configure and maintain application environments;
- Perform design, development, and testing tasks using Microsoft’s .NET framework, Node.JS, C#, ASP.NET, ADO.NET, WCF, WPF, Angular and Web Services;
- Produce robust, efficient, and secure .NET/Jscript code for applications that interact with end users in high availability environments;
- Develop n-tier web and client-server applications.
- Analyze, test, and apply changes to the application environment under the prevailing change management procedures and requirements.
- Work collaboratively with users and IT staff to design streamlined and efficient user interfaces.
- Coordinate development efforts with project management, software developers, functional SMEs, business analysts and quality analysts during the various phases of the SLC.
- Troubleshoot application and database performance problems.
- Productively integrate with an Agile development team.
- Leverage automated testing to consistently deliver reliable, high-quality code.
- Share functional and technical knowledge needed to develop and support our systems with others.
- With manager oversight and approval, when needed, assume the role and responsibilities of a project technical lead, which include the following:
- Review other developers’ code and provide technical feedback where necessary to validate that code follows team coding standards and programming best practices;
- Break down technical work into tasks and provide reasonable time estimates for completion;
- Communicate status of project development work to project team, users, information system owner and others;
- Analyze and propose technical designs that satisfy functional and non-functional requirements which also optimize the long-term maintainability of the system;
- Identify and escalate technical bottlenecks and impediments to the project manager and information system owner;
- Produce required project technical documentation.
Education & Corresponding Experience
- A Bachelor’s, Master’s, or Post-Graduate degree in Computer/Information Technology (or directly-related field) is preferred. Applicable certifications will count toward 1 year of experience.
- With an applicable Bachelor’s degree, 5 years of experience is required.
- Without an applicable degree, 7 years of experience is required.
- Experience should include work in the Computer/Information Technology field.
Required Technical Skills & Experience
- 5 years of experience with applications design & development experience developing secure applications using the .NET framework, C#, ASP.NET, ADO.NET, and Web Services.
- 5 years of experience with applications design & development experience developing secure applications using WPF or WCF.
- Expert level knowledge and skill in the following:
- Visual Studio (2015 or greater);
- Microsoft .NET (4.0 or greater);
- C#, ASP.NET, ADO.NET, CSS and HTML;
- Microsoft SQL Server (2005 or greater) and/or Oracle (9i or greater);
- T-SQL and/or PL/SQL;
- TFS, SVN or other source control tool;
- WPF or WCF development;
- Angular & Node.JS.
- Knowledge of Active Directory and developing and applying of role-based security models.
- 3 years of experience with SSRS report development.
- 3 years of experience integrating configuration management methodologies and techniques, including branching and merging.
- 3 years of experience developing unit-testing scenarios to exercise a .NET Framework application to simulate environmental failures and code failures.
- Current certification as a Microsoft Certified Software Developer (MCSD).
- Knowledge of and skill in the following areas:
- Microsoft AJAX and AJAX control toolkit;
- Telerik .NET UI controls;
- ASP.NET MVC 2 or greater;
- Messaging Integration;
- XML (utilization via DOM and/or SAX, XPATH, XML Schemas, XSLT);
- Database Replication Techniques;
- nUnit or comparable unit testing tool;
- Exposure to other programming languages such as Java;
- HP Application Lifecycle Management.
All employment offers are contingent upon successful completion of our pre-employment screening that may include drug testing, background/criminal check, and if applicable, must meet eligibility requirements for access to classified information.