zapier<\/a>\u2014a tool for connecting different apps, such as asana and zendesk, without any coding. zapier gave me more control over the tasks created in asana, and i could use a lot more zendesk attributes, giving me more control over structuring the email, and thus the task, created in asana. sweet!<\/p>\ncreating a zap is fairly easy. you need to link accounts, test that they are connected, and then you can start sending tickets from zendesk to asana.<\/p>\n
<\/p>\n
zapier, for all the great control it does provide, i discovered two little crooked parts during the set up. i couldn\u2019t just grab a ticket with a specific tag. zapier will only look at a specific view and grab tickets from that view, so i had to create a public view for tickets with the content_improvement<\/em> tag. easy enough. i made a new view:<\/p>\n <\/p>\n
now i could choose the appropriate view in zapier.<\/p>\n
<\/p>\n
and set up the message\/task for asana:<\/p>\n
<\/p>\n
the second crooked step was that i couldn\u2019t get zapier to grab a private comment from the assignee (i guess not all zendesk attributes were available).the only solution i could find was to have zapier use the last body comment made on the ticket. that’s what i was doing before with the zendesk email, and i knew that the last comment wasn\u2019t always helpful. to solve this problem, we needed a good process, an important part of making the automated content improvement process better.<\/p>\n
creating a process<\/h1>\n first, we had to structure the information that the remote team was sending. this is easy to solve with a macro. the macro will ensure that all the information our content team needs is right there, and our remote team doesn\u2019t need to remember what to include. here is the text of the macro:<\/p>\n
lesson\/question title: [add lesson or question title here]<\/p>\n
prompt id: [if it is a question, add the prompt id. if it is a lesson, delete all of this line]<\/p>\n
author of lesson or question: [add the name of the author of the lesson\/question. the lesson will have a picture of the instructor. the question author is listed under the admin section on the answer page<\/p>\n
url: [url to question or lesson]<\/p>\n
explanation of issue: [explain the error or issue]<\/p><\/blockquote>\n
using a macro provides other benefits besides structuring information. we can default the response to private since it would only confuse the student, and the macro will automatically add the tag. the goal of any good process is to make it easy to follow, especially in the flow of work. if the team knows about the macro, it will be very easy for them to be successful.<\/p>\n
with the automation in place, tested, and successfully working, it was time to train the remote team. for any changes or updates like this, repetition of information is key. i sent out an email to explain the process and changes, and i wrote a doc with more detail and linked to it in the email. at the end of every month, we send out a newsletter, and so, i repeated the change there too. the hope is that if someone doesn\u2019t see it the first time, they have an opportunity to see it again, and if they see it more than once then there\u2019s a good chance that they will remember what to do.<\/p>\n
here are the steps that we originally outlined for the process:<\/p>\n
\n\nreply to the student, thanking them for pointing out the error and explaining that our content team will look at the error and prioritize fixing it. you can use a macro for part of your response: \u201ccontent::thank you for your feedback\u201d<\/li>\n update the ticket as open<\/li>\n return to the ticket.<\/li>\n use the macro: \u201ccontent improvement \/ error in question or lesson\u201d and fill out all the lines in the macro. make sure your comment is private. you should also see the content_improvement tag too. \ud83d\ude00<\/li>\n update the ticket as solved<\/li>\n<\/ol>\n<\/blockquote>\nof course, nothing works perfectly. people forget. so i made sure to follow up with specific people to remind them about the new approach for the first week or so. i understand that it\u2019s easy to forget a change like this. following up with people is part of the automation process.<\/p>\n
soon enough, we had some success! the formatting made it easy to see the vital information. having the author makes it easy to assign the task out. links to the lesson or question, and a link to the ticket, means that the content team doesn\u2019t need to search around for this information in the ticket. i can see who on the remote team filled out the information for easy follow up, and of course, a section that explains the error or issue.<\/p>\n
<\/p>\n
iterate and make it better<\/h1>\n at this point, we didn\u2019t touch the process for a month or so. it worked well enough and was easy for our content team to prioritize tasks. but with time, we realized there was even more that we could do:<\/p>\n
<\/p>\n
this extra little step was going to make the process even better. with it, we could leverage a feature in asana that identifies duplicates, thus making it much easier to see when something should become a high priority since it was affecting so many students.<\/p>\n
for this change, we need to hop back to zapier and change a few things. we need to use \u201csubject\u201d to grab the title of the zendesk ticket, and we added \u201cexam\u201d as a custom ticket field recently, so we dropped that in the title too.<\/p>\n
<\/p>\n
again, once the zap is in place, we have to update the remote team about the change in the process. this is a significant change too. they will need to actually change the title of the zendesk ticket! (i ran a test to make sure that changing the title in the zendesk ticket won\u2019t do anything weird on the student\u2019s side.) another round of emails, newsletters, and follow-ups so that everyone was on the same page about the new process:<\/p>\n
\n\nreply to the student, thanking them for point out the error and explaining that our content team will look at the error and prioritize fixing it. you can use a macro for part of your response: \u201ccontent::thank you for your feedback\u201d<\/li>\n update the ticket as open<\/li>\n return to the ticket.<\/li>\n write a private comment (\u201cinternal note\u201d) to the content team explaining the error. use the macro: \u201ccontent improvement \/ error in question or lesson\u201d and fill out all the lines in the macro. you should also see the content_improvement tag too. \ud83d\ude00<\/li>\n change the title of the ticket to the lesson or question title (click on the title and you\u2019ll be able to edit it).<\/li>\n update the ticket as solved<\/li>\n<\/ol>\n<\/blockquote>\nin closing<\/h1>\n as with any solution, rarely (probably never) is the first solution the best one. the key is to continually iterate on the process. to constantly look for ways to refine what you have.<\/p>\n
the iterations we looked at are the most relevant ones. i spared the smaller iterations. we didn\u2019t originally default the macro to make the note private. we didn\u2019t always include the author of the lesson or question. zapier now allows us to grab the last private comment from the assignee instead of the last comment, so i\u2019ll be tweaking the process again soon. i also received feedback from someone on our remote team.<\/p>\n
<\/p>\n
so i\u2019ll be working on that soon.<\/p>\n
our work is never done. it\u2019s never perfect. all we can do is take small steps towards improving what we have. that\u2019s what we do and that\u2019s what we\u2019ll continue to do at magoosh.<\/p>\n
<\/p>\n","protected":false},"excerpt":{"rendered":"
learn how we optimize our operations through a commitment to our core values.<\/p>\n","protected":false},"author":12,"featured_media":3249,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[248,249,250,251,252],"ppma_author":[497],"acf":[],"yoast_head":"\n
pain, automate, iterate: improving communication with remote and internal teams<\/title>\n \n \n \n \n \n \n \n \n \n \n \n\t \n\t \n\t \n \n \n \n \n\t \n\t \n\t \n