- Responsible for analysis, design, programming, and implementation of the most complex applications tasks and projects in the area.
- Devise feasible, logical procedures to resolve business problems through the use of computer resources.
- Formulate scope and objectives through research to develop or modify complex systems.
- Provide technical direction and support in the development and support of business systems software and procedures.
- Design, code, test and debug the most complex application programs.
- Migrate existing legacy stand-alone application functionality to new API enabled web application.
- Work collaboratively with other developers and internal customers from multiple departments.
- Teach and demonstrate to others design considerations with web applications.
- Actively lead and participate in code reviews/walkthroughs.
- Bachelor' s degree in Computer Science, Information Technology or other job related degree, OR
- 4 added years of job related work experience, OR
- 2 years of job related experience plus an associate s degree in Computer Science, Information Technology or other job related degree (8 yrs)
Required Work Experience:
- 6 years of application development, systems testing or other job related experience.
- SQL administration and/or development experience.
- 2 years of back-end experience with Node.Js.
- Experience creating and using automated unit tests (Test Driven Development).
- Experience creating and consuming API s for application integrations.
- Experience refactoring legacy applications into modern architecture frameworks.
- Experience working with Progressive Web Applications (PWA) and developer tools associated with optimizing PWA experience.
- Experience building and using application delivery pipelines and source code management systems such as GitHub, Jenkins, etc.
Required Skills and Abilities:
- Advanced understanding of applications/development, quality assurance and integration methodologies, concepts and facilities in a mainframe, midrange, and/or PC/LAN environment.
- Demonstrates a high level of technical proficiency in the areas of programming languages, platform capabilities, and methods of systems analysis and program design.
- Advanced analysis, decision-making, and problem solving skills.
- Demonstrates logical abstract thinking and assimilating/adhering to project goals and deadlines.
- Ability to communicate effectively verbally and in writing.
- Able to work well under pressure and as part of a team.
- Extensive knowledge of interpersonal skills/team building.
- Familiar with project management concepts.
- Ability to assess requirements, alternatives, and risks/benefits for low- to high-impact projects.
- Pays attention to detail.
- Ability to establish and maintain effective working relationships with employees, clients, vendors etc.
- In-depth understanding of organizational functions, behavior, and inter-relationships.
- 20% Provide expertise regarding the integration of applications across the business. Conceive, design, and implement structures and programs to business systems software.
- 15% Act as an internal consultant, advocate, mentor, and change agent providing expertise and technical guidance on complex projects. Work closely with customers, business analysts, and team members to determine business requirements that drive the analysis and design of quality technical solutions. Ensure solutions are aligned with business and IT strategies and comply with the organization s architectural standards.
- 15% Provide design recommendations based on long-term IT organization strategy. Make recommendations towards the development of new code or reuse of existing code. Responsibilities may also include participation in component and data architecture design, performance monitoring, product evaluation and buy versus build recommendations.
- 15% Perform analysis, design, programming, and implementation on systems and procedures to solve complex business or scientific problems. Develop enterprise-level applications and custom integration solutions. Evaluate complex interrelationships in immediate programming area to determine how changes in one program will affect another related area.
- 15% Develop programming and development standards. Devise new sources of data and develop new approaches and techniques. Involved in the full systems life cycle and is responsible for designing, coding, testing, implementing, maintaining and supporting application software that is delivered on time and within budget.
- 15% Provide guidance to lower level programmers/analysts. Lead, plan, organize, and/or coordinate complex projects or phases of large projects. Determine and resolve problems with other systems analysts, programmers, and systems users.
- 5% Test designed programs, verify logic, perform any necessary " debugging," and write the documentation.