• Talk about how you made your site and why you chose the tools you did. Briefly explain one challenge you experienced in setting up this site and how you overcame it.
    • I made my site with vanilla javaScript. Given the requirements of the task I wanted to go with a lightweight option.
    • I encountered a minor challenge while adding a custom domain to my website. I chose to experiment with configuring DNS records through GoDaddy, opting out of Netlify's DNS.

      It is suggested that I set www.customdomain.com as the primary domain to benefit from the full advantages of a CDN. I attempted to set the www subdomain as the primary while the status was "Awaiting External DNS." Following the steps, Options (dropdown) → "Set as primary domain" → a confirmation modal appears → "Set as primary domain".

      However, after confirming, the modal updated with a warning: "We're provisioning a certificate for your site, and you cannot change custom domains until that process completes." Subsequent clicks on 'Set as primary domain' within the modal had no effect. To investigate further, I opened DevTools, examined the network tab, and when I analyzed the response, I discovered a 422 status code along with the error/warning message present in the modal.

                                      {
                                          "code": 422,
                                          "message": "We're provisioning a certificate for your site, you cannot change custom domains until that process completes"
                                      }
                                  

      Believing that resolving the "Awaiting External DNS" status was necessary, I followed the steps to clear it. Once the DNS records were successfully recognized by Netlify, I could then set the subdomain as my primary domain without any issues. Notably, this occurred on the Chrome browser.

      Possible Solution:

      • Disable the 'Set as primary domain' button while the 'Awaiting External DNS' status is present.
      • Add additional information indicating that the DNS records must be set before attempting to set the www subdomain.

  • What did you think of our service during the time you used it? Provide some constructive criticism or some features that impressed you.
    • I appreciate the straightforward deployment process, including the option to deploy from my GitHub repository with a quick resolution time. The dashboard navigation is user-friendly, and the inclusion of links to relevant documentation in each section is helpful for understanding configuration options.
  • Rank your 5 favorite and 5 least favorite activities from this list: https://gist.github.com/laurajodz/592402a6336410377dee1a744af846ab
    • 5 favorite
      1. Create video tutorials to help teach users a specific feature or use case.
      2. Help train and onboard new support teammates.
      3. Suggest and champion improvements to the Support team's workflow.
      4. Join a Zoom call with a VIP customer you have been helping via email, upon their request.
      5. Submit bug reports and potentially bug fixes.
    • 5 least favorite
      1. Respond to Netlify customers on Twitter.
      2. Work with prospective customers to explain our service and the pricing model.
      3. Work with a customer to figure out if Netlify's service can solve a particular workflow or integration challenge they have.
      4. Help manage communications during a service outage.
      5. Set up your own copy of several site frameworks for debugging.
  • Provide a link to documentation for a technical/developer-focused product, which you think are well done, and explain why you think they are well done.
    • https://nextjs.org/docs

      This documentation is well-designed with clear navigation, comprehensive content, images, and a practical search function. It includes a helpful learn section for hands-on experience and links to valuable external resources within the documentation. User feedback options, like content rating and feedback submission, contribute to its usability and collaborative nature.

  • Explain, in a couple of paragraphs, what you think are two major challenges around DNS configuration for less-technical customers hosting websites.
    • One primary challenge revolves around the comprehension of A (Address) and CNAME (Canonical Name) records. The A record serves the function of mapping a domain name to the IPv4 address of the web server hosting the website. While the CNAME records resolve alias names to their true or canonical domain names. Sifting through the documentation of the registrar to understand how to update the DNS records might also be an issue. Misconfiguration can bring down a website which could cause frustration.

      Another significant challenge pertains to understanding Time to live (TTL) and its impact on DNS propagation. The TTL parameter dictates the duration for which DNS information is considered valid. Notably, some hosting providers implement prolonged TTLs, resulting in delays of several hours or even days for DNS updates to propagate. This may lead to customer frustration or a misconception of potential misconfigurations when anticipated updates are not promptly reflected.

  • A customer writes in to Support saying simply that their “site won't build”. You have access to their build logs, and there you see this error: Build failed due to a user error: Build script returned non-zero exit code: 2. You have no more information than this and the site's source repository is private so you cannot test the build yourself. How would you troubleshoot this issue? What steps would you take? Also, please compose your best customer-facing first response.
    • I would take the following steps to troubleshoot the issue:

      • Check to see that the issue has not been reported and resolved in the past. There might be detailed troubleshooting steps documented that I could reference to the customer. I would take note of that information to include in my response to the customer.
      • Check the documentation surrounding the build process to see if I could find any clues to the potential problem.
      • Ask my team and the development team for assistance since they might have a better understanding of the underlying issue or potential causes. They might also be able to confirm my findings to ensure I am on the right track.
      • Try to trigger the same build error and take note of the different situations that cause it. Although I could not make an exhaustive list of all the potential causes, this can help with documentation, knowledge sharing, and troubleshooting suggestions.
      • Craft a detailed response to the customer outlining troubleshooting steps that could be taken. I could also ask some qualifying questions to the customer before sending any troubleshooting steps as some might not be relevant to their current situation.
      • Gather all the information during my investigation and document it thoroughly.

      Customer response: I am sorry to hear that you are having trouble deploying your site because the site will not build. I have investigated the issue and have found some resources that might help your troubleshooting efforts. If you encounter any difficulties or have specific questions while going through these materials, please don't hesitate to reach out. I am here to help.

      • Netlify's Documentation: docs.netlify.com/configure-builds/troubleshooting-tips/
      • Netlify's Support Forms: https://answers.netlify.com/t/build-failed-due-to-a-user-error-build-script-returned-non-zero-exit-code-2/40561
      • Netlify's Support Forms: https://answers.netlify.com/t/building-script-returned-non-zero-exit-code-2/49827
      • React.js Related: https://stackoverflow.com/questions/64468843/netlify-deployment-failed-during-stage-building-site-build-script-returned-n

      If you can provide additional information regarding any steps you have taken to resolve the issue, your set up, or build/error logs I would be more than happy to assist you in tracking down the culprit. Getting you unstuck is our top priority, if after reviewing the provided resources and trying any relevant troubleshooting steps, the issue persists, please get back to us with any additional information you can provide so that we can work together to resolve this matter.

  • How would you set up an http 301 status redirect from “/netlify/anything” on your site, to https://www.google.com/search?q=anything. Please provide the redirect formatting here. Now, how about a proxy redirect? Please add that proxy redirect rule directly to your site.
    •                 [[redirects]]
                        from = "/netlify/:anything"
                        to = "https://www.google.com/search?q=:anything"
                        status = 301
                  
  • Please attempt to deploy a function on our service. This need not be complicated. It could be "Hello World". Note that failure to deploy is not failing the exercise! Whether you have trouble or not, please describe what you experienced and how you attempted to troubleshoot any issues you encountered.
    • I set up my function to respond to https://www.dreamcloudjourney.com/hello

      I did not encounter any issues with deploying the function. The documentation provided a clear template for how to set up a simple function. The experience was seamless.

  • We understand you don't know anything about our internal procedures at this stage, but we want you to explain at a high level how you'd react to this situation: You receive a report of a severe security issue on www.netlify.com. You can't immediately confirm the report, so what steps might you take to investigate or substantiate the report? What might you say to the reporter, even though we haven't confirmed their assertion yet, that will instill confidence that our business is very concerned about security? You believe there is a reasonable chance the report is correct and the problem is very large and impactful. How might you escalate?
    • Since I can't immediately confirm the report, I would take the following steps.

      • Take note of any information listed in the report that can be tested quickly.
      • Notify my supervisor immediately of the report since security is a high priority, I would not want to waste valuable time addressing the issue on my own when it might need cross-functional cooperation. This might include bringing in IT, developers, and the legal department depending on the severity of the report.
      • Run any tests that I can perform avoiding anything that could potentially be a security risk.
      • Document all steps taken during the investigation as well as any findings.
      • Check logs if applicable and see if there have been similar reports indicating the same or similar issues and see how they've been resolved and gather as much information as possible.

      Customer response: Thank you for bringing this issue to our attention. Security is a priority that we take seriously. We appreciate your dedication to ensuring the safety of our products. I've escalated this matter to my supervisor, and we are actively working towards a resolution. We anticipate having an update within the next few hours. Once our investigation is complete, we will provide updates on the severity, impact, and any other relevant information. We value your vigilance and understanding as we address this situation promptly.