Imagine que você conseguiu:
- uma parceria com grandes lojas internacionais online de venda de produtos.
- uma parceria com as grandes operadoras de telefonia do planeta.
- milhões de assinantes dispostos a pagar uma assinatura para utilizar conseguir comprar produtos com bons descontos.
Com isso, você decide criar o Clube de descontos: um serviço de assinatura, onde o usuário paga um pequeno valor recorrente para ter acesso a centenas de descontos que, se comprados individualmente, custariam um valor muito maior do que a assinatura no serviço de descontos. O assinante paga o valor direto na conta de telefone da operadora, sem precisar de cartão de crédito.
Acho que você teve uma boa ideia, hein? =)
Ok, deu pra ver que você é fera nos negócios, mas chegou a hora de programar!
Serão várias aplicações-cliente (sites ou apps), uma por operadora, acessando uma API que exibe as lojas e os descontos.
Simples assim? Quase...
Aí vão algumas considerações:
- Cada operadora tem seus descontos exclusivos. Por isso, cada loja pode exibir descontos diferentes.
- Cada operadora deve ter uma URL independente e exclusiva. Exemplo: http://localhost:8080/claro, http://localhost:8080/vivo, etc
Ao abrir a página, o usuário deve visualizar uma listagem com os descontos disponíveis por operadora (e também suas marcas). Ao clicar num item da listagem, o usuário deve visualizar a tela de detalhes da oferta em questão.
backend:
O paradigma de banco de dados fica a seu gosto: SQL ou NoSQL. A linguagem de programação também (Java, Python, NodeJs, Golang, Kotlin, etc), desde que o resultado final seja um boa API.
frontend:
Você pode criar suas páginas utilizando o framework que quiser. React, vue, angular, etc.
Documentação, diagramas, testes, automatização de ambiente, etc são muito bem vindos e avaliados.