JOB PURPOSE:
- To design, execute, assess, and troubleshoot software programs and applications.
- This includes configuring, coding, developing, and documenting software specifications throughout the project life cycle.
- This role will also oversee system start-ups in a timely and accurate fashion, and provide support to other departments where required
MINIMUM REQUIREMENTS:
- Bachelor Degree in Computer Systems Design, Computer Science, Information Technology, Engineering or a related discipline (Required), Certified Scrum Master,
- Industry recognized certification in Project Management
Experience
- 6 – 8 years direct experience in software development and / or programming design and systems management,
- Experience at working both independently and in a team-oriented, collaborative environment is essential,
- Experience in Mobile app development platforms,
- Experience with agile software development methodologies and tools,
- Experience with hierarchical (e.g., Caché), object-relational (e.g., PostgreSQL) and relational (e.g., MSSQL) databases,
- Experience with Linux and Microsoft operating systems, Hands-on software troubleshooting experience,
- Knowledge of applicable data privacy practices and laws, Solid working knowledge of current Internet technologies, technically fluent in programming languages, including C#, Java
RESPONSIBILITIES:
- Administer diagnostic analysis of test results and deliver solutions to critical areas,
- Assist in the preparation and documentation of software requirements and specifications, Collaborate with analysts and designers in the development and initiation of new software programs and applications,
- Consistently write, translate, and code software programs and applications according to specifications,
- Cultivate and disseminate knowledge of application development best practices,
- Determine, develop, and maintain user manuals and guidelines,
- Develop an awareness of programming and design alternatives,
- Direct research on emerging application development software products, languages, and standards in support of procurement and development efforts,
- Gather statistics and prepare and write reports on the status of the programming process for discussion with management and/or team members,
- Install software products for end users as required,
- Interact regularly with managers, clients, vendors, and agencies to field queries and questions, Liaise with company’s software and hardware suppliers for prompt rectification of any problems or emergencies,
- Liaise with network administrators, systems analysts, programmers, and other software engineers to resolve any defects in products or company systems,
- Oversee the quality assurance of program logic, data processing, and error resolution,
- Plan phases of the software development life cycle (SDLC) for a variety of projects, Recommend, schedule, and perform software improvements and upgrades for optimal performance of company applications,
- Research, document, and implement program requirements and specifications,
- Run and monitor performance tests on new and existing software for the purposes of correcting mistakes, isolating areas for improvement, and general debugging,
- Take an active role in cross-departmental projects when needed,
- Train, manage and provide guidance to junior software development staff, Write and / or delete programming script to enhance functionality and/or appearance of company applications as necessary.