Serve as a member of a highly collaborative team environment to develop business and customer facing software solutions primarily utilizing Microsoft.Net platform technologies. Participate in an Agile/Lean software development process which primarily involves: story analysis, high level design, test driven and unit test based software development. Also supports the team efforts in system integration and testing, release readiness activities, support documentation, and response to production issues when required.
DUTIES AND RESPONSIBILITIES:
Essential functions of the position include, but are not limited to:
1. Customer Service
Take the necessary steps to ensure our customers' needs are met to the maximum extent possible in an accurate and timely manner. Work with other FCSAmerica team members to provide on-going support, including the development of technical documentation.
2. Software Development
Level 20 – Follow existing coding and testing patterns established within a team project. Understand basic object oriented designs and extend a design in predictable directions if needed. Complete programming tasks with assistance and guidance from more experienced team members.
Level 22 –Perform design, coding, and testing within a project team by following or adapting patterns established within a team project. Understand service based, multi-tier, object oriented architectures and extend or adapt the design as necessary for changes to mission critical business systems. Produce solutions that result in flexible, efficient use of system resources and minimal maintenance after implementation. Complete programming tasks independently or in conjunction with other team members.
Level 24 –Perform design, coding, and testing within a project team by adapting existing patterns established within a team project. Use expertise to identify and champion new patterns / practices to augment existing projects or to establish new projects. Understand service based, multi-tier, object oriented architectures and use those skills to establish new designs as necessary for changes to mission critical business systems. Produce solutions that are extendable, flexible, require minimal maintenance after implementation, and make efficient use of system resources. Complete programming tasks independently or in conjunction with other team members. Mentor and provide guidance to team members.
Perform analysis of existing code bases, software systems, and integrated processes for the purpose of correcting, enhancing or replacing them. Solve problems by reviewing the objectives and scope, gathering facts, analyzing data, and preparing alternatives.
Level 20: Locate and communicate findings for focused assignments using established procedures and resources. Utilize and extend existing documentation and diagrams as part of the analysis.
Level 22: Demonstrate behaviors of level 20 and perform independent research on broad assignments and makes recommendations. Create new documents and diagrams modeled after existing ones.
Level 24: Demonstrate behaviors of level 20, 22 and assess analysis of other team members and build consensus around recommendations. Create new styles of documents and diagrams to represent new systems or ideas.
4. Story / Requirements Collaboration
Collaborate with domain experts and product owners to understand desired systems changes via Agile story development. Review stories and use them as beginning point for conversations. Augment, enhance or suggest creation of new stories based on discovered understanding.
Level 20: Seek understanding of product owner’s core request via discussion, clarifying questions, and review of existing code or documentation.
Level 22: Demonstrate behaviors of level 20 and collaborate with product owner to identify and discover what the system will need to do.
Level 24: Demonstrate behaviors of level 20, 22 and recognize potential system needs and serve as advocate for stories needed to create sustainable, reliable systems.
Craft software solutions that inherently support testing at multiple levels. This includes decomposition of functions, interface based design, dependency injection, unit testing, test driven design, service level testing, and supporting user interface automation testing.
Level 20: Follow established practices for creating and executing unit tests as part of the development process.
Level 22: Modify existing code to be more testable through application of proper design patterns. Create test cases which ensure boundary and adverse condition scenarios are appropriately handled by the software solution.
Level 24: Introduce / extend appropriate testing approaches to effectively evaluate a system under development.
6. Continuous Integration and Deployment
Modify and create code in such a manner that units of development can be successfully submitted to a source code repository, enabling successful automated builds, deployment and testing. Effectively leverage tools and best practices to enable continuous integration and frequent, reliable releases.
7. Software Integration and Support
Design enhancements to existing systems and participate in the installation and integration of new software with existing systems. Monitor system performance to ensure that efficient operations and results are achieved. Provide on-going production support as needed.
Additional functions of the position may include:
1. Performs other related duties as assigned.
Level 20: Academic training in software related field or experience with software development. Demonstrated aptitude for technical problem solving, abstract thinking, and logic associated with software development.
1. Experience with any major IDE (eg Visual Studio , Eclipse, , XCode)
2. Familiarity with programming in a managed code runtime such as Microsoft .Net , Java , Objective C.
3. Understanding of some web site technology such as ASP.Net, JSP
Level 22: Bachelors degree in computer science or MIS or equivalent experience. Minimum of three years experience developing Windows multi-tier, Intranet/Internet and PC-based technologies.
1. Experience with recent versions of Visual Studio (minimum 6 months)
2. Experience with creating applications in Microsoft .Net using C# or VB.Net
3. Familiarity using Microsoft SQL Server or similar as data repository for applications
5. Basic knowledge of Microsoft Windows Server 2008 or newer as platform for server based application deployment: Internet Information Server (IIS) site configuration, Windows Services, file shares, Windows Communication Foundation (WCF), Windows Workflow (WF).
Level 24: Bachelors degree in computer science, MIS or equivalent experience. Minimum five years experience developing Windows multi-tier, Intranet/Internet and PC-based technologies. Demonstrated ability to manage small projects and the design of medium to large projects software solutions. Provide technical leadership to project teams and mentors team members as needed. In addition to Level 22 specifications:
1. Experience with Microsoft Team Foundation Server (TFS), creating multi-project solutions. Utilizing Application Lifecycle Management (ALM) functionality such as:
a. TFS Workflow
b. Create and maintain TFS / MS Builds
c. Perform Code Analysis
d. Maintain layered code architecture
e. Performance monitoring and optimization
2. Experience with creating and maintaining applications across different business domains
3. Working knowledge with Microsoft SQL Server as data repository for complex applications
4. Experience configuring IIS 7 to host web sites, web services, and WCF services. Experience creating and installing Windows Services.
5. Experience creating WCF and WF based solutions is desired.
Duties for all levels require:
- Understand customer service philosophies and the role of information management with regard to computer hardware, software, and operating environments. Knowledge of structured analysis and programming techniques, and relational database concepts. Experience building multi-tier and web-based applications in a Windows environment.
- Ability to work independently and in a team environment to complete tasks on a timely basis. Exercise leadership and judgment; analyze, evaluate, and develop solutions to complex problems; make a positive personal impact on others; is innovative and creative and logical and objective. Train, instruct and provides guidance to others as directed. Interact positively with representatives of other associations, vendors, and commercial entities.
- Ability to work effectively in a team environment and effectively demonstrate teambuilding attitude and skills.
- Proficient in Windows environment using Microsoft Word, Excel, Outlook, and Internet Explorer.
Farm Credit Services of America employees, vendors, internal/external auditors, FCA, FCCA, other districts, and consultants.
MENTAL AND PHYSICAL REQUIREMENTS:
Requirements of the job include the ability to do the work, with or without reasonable accommodations. It is the Association's policy to make reasonable accommodations for individuals with disabilities. Leadership retains the right to add, subtract or change duties of the position at any time.
- Operates a computer and related peripheral equipment proficiently and performs repetitive motions on computer for extended periods of time to include reading the screen and keying/typing information.
- Ability to reason, judge, compare, calculate, evaluate and critique such information as written materials, numerical data, responses to customer needs and/or other work related activities.
- Ability to complete work in an acceptable time frame and manage a variety of detailed tasks and responsibilities simultaneously and with accuracy to meet deadlines, goals, and objectives and satisfy internal and external customer needs related to the job.
- Understand and use computer technology related to carrying out essential responsibilities of the job.
- Ability to operate telephones and responds to calls and in-person inquiries.
- Ability to move about the office with occasional reaching and bending.
- Ability to travel by auto or commercial transportation to carry out essential responsibilities of the job.
- Ability to lift or move equipment up to 50 lbs. from one location to another.
This document does not create an employment contract, implied or otherwise, other than "at will" employment relationship.
Farm Credit Services of America, based in Omaha, Nebraska, is dedicated to serving the agricultural credit, risk management and financial...