See More Jobs From Farm Credit
Location: - (Omaha, Nebraska, Mid-West United States, USA)
Company: Farm Credit Services of America
Open Til: 02-Mar-12
Industry Sector: Agribusiness
Industry Type: Finance/Banking
Career Type: Technology
Job Type: Full Time
Minimum Years Experience Required: N/A
Salary: $52,260 - $118,420
Send This Job To A Friend
POSITION REPORTS TO: Director - Applications Development
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.