Domain Driven DesignJuly 3rd, 2020
Hmm, I am trying to figure out what this would mean without looking it up.
Domains I know as sites, but I would think that Tesla.com would be the only domain. Subdomains would be departments within sites, so subdomain driven design might make more sense.
How else can Domains be interpreted? Domain Driven Design sounds like it would be integration across several domains. So perhaps Domain means technology.
Now I will look it up. I think I am way off.
Domain-driven design (DDD) is an approach to developing software for complex needs by deeply connecting the implementation to an evolving model of the core business concepts.
Good thing I am not in an interview and I can look stuff up.
Okay, so DDD in terms of Tesla Insurance should pertain to "complex needs" and "core business concepts".
Core business concepts
- Get people signed up quickly with perfect coverage
- Allow App to Submit Claims
- Integrate Claims with Tesla Service Appointments
- Minimise Customer Disruption
- People from different regions have different currencies, languages, rates, environmental hazards and numerous other factors which impact cost/month
- Individuals have other differences++ such as driving history
- Different regions have different laws and regulations and require different contracts generated
- Different claims may arise from vandalism, at fault, no-fault which need to be determined by dynamic authorities
- Compensations need to be sent/collected
- Video evidence from incidents can be attached to claims
Am I close?
Mediocre Developer always striving to be better. Learn from others' mistakes, learn by doing, fail fast, maximize productivity, and really think hard about good defaults. Computer developers have the power to add an entire infinite dimension with a single Int (or maybe BigInt). The least we can do with that power is be creative.