Software Architecture and Design for Backend
Project scope
Categories
Cloud technologies Software developmentSkills
architectural patterns software architecture open-source software technical documentation systems design research open source technology writing new product developmentOur company would like to explore software architecture and support for the current backend of our product. In advance of any product build, our company spends a good amount of time researching potential technologies, architectures, and how they will fit together to fit our customerโs needs. We would like you to evaluate our current or new productโs needs and compare that against current open source technologies and architectural patterns to develop an overall software architecture we could use to implement in our product.
This will involve:
- Conduct background research on our product.
- Identify what open source software is available and what software architecture patterns would be best suited towards this application.
- Creation of a detailed software architecture model, highlighting key components, software, patterns and anything else needed.
- Create architecture patterns based on prior literature and system design guides.
- Assist in writing technical documentation for the overall project.
By the end of the project, students should complete the following list of activities:
- Familiarize themselves with our product and its requirements
- Familiarize themselves with applicable open source software and architectural patterns that would help deliver on our requirements
- Design and report on a software architecture including patterns, key components, software, etc.
- Present the final models to us with the context of all their choices they made, problems they encountered, and next steps they recommend.
Bonus steps would include:
- Building a small proof of concept application which demonstrates the architecture.
Learners will receive technical mentorship from the lead engineers as well as project managers who will assist in guiding through the entire software development process. Learners will also be able to work with team members in collaborative settings and peer programming sessions to assist in development of the project.
Supported causes
Good health and well-beingAbout the company
Purple Lotus is a mental wellness software company. We build tools designed to make a meaningful impact on the well being of youth.