items_header

Open projects

Projects available to all portals

Levis Tech
Saskatoon, Saskatchewan, Canada
Preferred learners
  • Saskatoon, Saskatchewan, Canada
  • Academic experience or paid work
Categories
Computer science & IT Cloud technologies Mobile app development Information technology Software development
Skills
microsoft visual studio operational efficiency github php development development testing test automation php (scripting language) command-line interface continuous integration sassy cascading style sheets (scss)
Project scope
What is the main goal for this project?

The main goal of the PRISM DevOps Enhancement Internship Program is to streamline and automate the development, testing, and deployment processes for the PRISM software framework. This involves integrating advanced DevOps tools and practices, such as continuous integration and continuous deployment (CI/CD), automated testing, and efficient management of dependencies and migrations. The project aims to enhance the overall efficiency, reliability, and scalability of software development workflows within your organization.

What tasks will learners need to complete to achieve the project goal?

For the PRISM DevOps Enhancement Internship Program, learners will need to complete the following key tasks:


1. **Install and Configure SQL Migration Library**:

  - Set up PRISM to perform its setup through PHP CLI tools.

  - Implement Phinx for initial database migrations and integrate it within the existing CI/CD pipeline using GitHub Actions.


2. **Set Up Continuous Integration (CI)**:

  - Choose appropriate testing methods (e.g., End-to-End, Unit testing).

  - Implement testing frameworks like Pest and Cypress within PRISM’s GitHub repository.

  - Develop and execute a suite of general tests to verify core functionalities of PRISM.

  - Configure GitHub Actions to run these tests, initially in a development environment and ultimately in an isolated GitHub Action environment.


3. **Streamline the Development and Deployment Processes**:

  - Automate the compilation of SCSS to CSS during the CI/CD process to remove this task from developers' responsibilities.

  - Set up a self-hosted GitHub runner to facilitate better integration with client environments.


4. **Enhance the Development Environment Setup**:

  - Automate the setup of Visual Studio Code for PRISM, including the installation of necessary extensions and the configuration of PHP development tools.

  - Integrate Dependabot to automatically check and update PHP and JavaScript dependencies.


5. **Improve Backup and Maintenance Scripts**:

  - Enhance the backup script for better data management, reporting, and efficiency.

  - Implement automatic removal of outdated files and compression of backup data.


6. **Explore Advanced Performance Optimization Techniques** (low priority):

  - Investigate the implementation of caching solutions like Redis to enhance the performance of hosted sites.


By completing these tasks, learners will gain hands-on experience in modern DevOps practices and contribute significantly to improving the operational efficiency of the PRISM framework.

How will you support learners in completing the project?

This learner will be fully integrated into the Levis Tech team. The expectation is they work in the office along side our other staff members. We will provide them all the tools and guidance required to completed their tasks.


About the company

Levis Tech is a custom software company located in Saskatoon Saskatchewan. It was founded March 16 2018 and has 2 owners, a team of about 6 developers, 1 graphic designer and specializes in web and mobile applications. Levis Tech has a proprietary web application framework called PRISM that they use for the majority of their projects. PRISM was originally developed as a LAMP stack technology but has been ported over to Windows hosting environments, Microsoft Azure and AWS. The database can generally run on any SQL variant without too many changes.