GENERAL DUTIES & RESPONSIBILITIES
- Analyzes, designs, programs, debugs and modifies software enhancements and/or new products used in local, networked or Internet-related computer programs. (Code must be used in core version of applications available for sale commercially.)
- Participate in the development cycle of Investran, DX, or other development effort as a member of an Agile SCRUM team playing the designated role/specialty within the team at any given sprint.
- Interacts with product managers and/or users to define system requirements and/or necessary modifications.
- Participates in software design meetings and analyzes user needs to determine technical requirements.
- Write technical specifications based on conceptual design and stated business requirements.
- Writes code, completes programming and performs testing and debugging of applications using current programming languages and technologies.
- Completes documentation and procedures for installation and maintenance.
- Trains and communicates with internal Client Training, Client Relationship and Sales teams on systems application.
- 5+ years of software development engineering experience.
Computer Science fundamentals in object-oriented design and data structures.
Computer Science fundamentals in algorithm design, problem solving, and complexity analysis.
Knowledge of, at least, one modern object-oriented programming language such as C#, Java, or C++.
Other related duties assigned as needed.
A Bachelors degree in computer engineering, computer science or other related discipline or the equivalent combination of education, training, or work experience.
GENERAL KNOWLEDGE, SKILLS & ABILITIES
- Knowledge of FIS products and services; in-depth knowledge of products and services in assigned line(s) of business
- Knowledge of financial services industry
- Knowledge of end-to-end systems development life cycles, e.g., waterfall, iterative and other modern approaches to software development
- Knowledge of standards relevant to the software industry , e.g., ISO, CMM, Six Sigma
- Knowledge of banking practices, regulations and operations within assigned line(s) of business
- In-depth understanding of design patterns and their application
- Fluency in developing and understanding sequence diagrams, class models, etc.
- Proficiency in solutions design and requirements definition disciplines leveraging model driven design based tools and techniques including conceptual solution component models, business process models, use cases, etc.
- Outstanding verbal and written communication skills to technical and non-technical audiences of various levels in the organization, e.g., executive, management, individual contributors
- Excellent analytical, decision-making, problem-solving, team and time management skills
- Ability to persuade and influence others on the best approach to take
- Ability to estimate work effort for project sub-plans or small projects and ensure the project is successfully completed
- Positive outlook, strong work ethic, and responsive to internal and external clients and contacts
- Willingly and successfully fulfills the role of teacher, mentor and coach
- May require in-depth knowledge of networking, computing platform, storage, database, security, middleware, network and systems management and related infrastructure technologies and practices
FIS JOB LEVEL DESCRIPTION
Advanced professional role. Requires a broad knowledge of the system development life cycle; products, services, practices, regulations and operations associated with the assigned line(s) of business; and software engineering alternatives. Requires proficiency in at least two higher-level programming languages. Evaluates systems specifications for complex business requirements, develops and prepares computer-based solutions. Analyzes problems in terms of detailed equipment requirements and capabilities, including those related to scalable applications, and cloud-based resources. Verifies program logic by preparing test data for trial runs. Receives general supervision and is competent to work at the highest level of all technical phases of software engineering while working on own or in a team environment most of the time. May be involved in providing assistance and training to lower level software engineers. Typically requires seven or more years software engineering work experience.