Ruby on Rails

Summarized using AI

We Need Someone Technical on the Call

Brittany Martin • May 02, 2023 • online

In the talk titled "We Need Someone Technical on the Call," Brittany Martin, an Engineering Manager and co-host of The Ruby on Rails Podcast, addresses the challenges and opportunities that arise when developers are asked to join calls with clients or stakeholders. She shares insights on how to navigate these interactions effectively, empowering both the technical team and customers while managing time efficiently.

Key Points Discussed:

  • Understanding Technical vs. Non-Technical Roles: Brittany clarifies the common misconceptions surrounding what it means to be technical, explaining that technical skills often include interpersonal skills essential for effective communication and teamwork in tech environments.
  • The "Dreaded DM" for Technical Calls: The phrase "they want someone technical on the call" can be daunting for developers. Brittany discusses the resistance developers face when interacting directly with customers and the organizational boundaries that often exist.
  • Preparing for Calls: Tips are provided on how to avoid unnecessary calls. Writing clear and detailed support tickets can significantly reduce the need for real-time support during calls.
  • Accepting Calls: Brittany discusses scenarios where accepting a call may be beneficial, such as when direct customer relationships are vital or when asynchronous communication hasn't yielded results.
  • Executing the Call Effectively: Once on the call, it’s crucial not to dominate the conversation. Listening actively and allowing other participants to express their issues can lead to uncovering the real problems at hand.

  • Elevating Team Members: She emphasizes the importance of empowering other teammates (like a second-in-command) during calls and encourages translating technical jargon into simpler language for non-technical stakeholders.

  • Post-Call Actions: Concluding the call effectively is vital; this includes summarizing conclusions and ensuring follow-through on action items discussed. Brittany also highlights the significance of internal retrospectives to understand why technical intervention was necessary.

Conclusions and Takeaways:

Brittany concludes that excelling in technical calls can foster career growth, encourage innovation, and build trust. By learning to navigate these calls with minimal effort and maximizing benefits, developers can positively impact their relationships with clients and contribute significantly to their companies' success. In her closing, she encourages participants to share their own experiences and keep the conversation going.

Ultimately, Brittany empowers attendees to view "technical" calls not as burdens but as opportunities for career advancement and effective collaboration in the tech landscape.

We Need Someone Technical on the Call
Brittany Martin • May 02, 2023 • online

A DM. The dreaded message. “They want someone technical on the call.” If that statement is terrifying, never fear. Being effective at these interactions can be a big opportunity for your career. Learn tactics on when to commit to calls and how to execute them while empowering your team, conserving your time and acing the follow through.

Brittany Martin is an Engineering Manager, Co-Host of The Ruby on Rails Podcast, proud Rubyist and now a returning roller derby skater under the pseudonym “Merge Conflict”.

https://www.wnb-rb.dev/meetups/2023/05/02

WNB.rb Meetup

00:00:00.000 hi everyone I am doing a mini version of
00:00:04.020 my talk I've done this at Sin City Ruby
00:00:06.600 and rubyconf mini and I was really
00:00:08.460 thrilled to be asked to do this at
00:00:10.080 wnb.rb
00:00:12.420 um so the title of the talk is we need
00:00:13.980 someone technical on McCall and I am the
00:00:17.340 host of this talk Brittany Martin so a
00:00:19.380 little bit about me I actually just
00:00:21.660 switched jobs so I now work as an
00:00:24.180 engineering manager at Shogun which is a
00:00:27.000 page builder on top of Shopify and
00:00:29.760 Bigcommerce you might also know me as
00:00:32.820 one of the co-hosts of the Ruby on Rails
00:00:34.920 podcast I've been doing that since
00:00:36.600 September 2018. Gemma isroth one of your
00:00:40.020 lovely founders of wnb is also one of my
00:00:42.899 co-hosts as well I took the podcast
00:00:45.360 independent in 2021 I have Gemma Brian
00:00:48.960 and Nick as co-hosts this podcast is my
00:00:53.100 contribution the community and I'm
00:00:54.840 really thrilled to see more Ruby
00:00:56.520 podcasts starting up
00:00:58.500 and I also am known as merge conflict
00:01:02.640 that is my roller derby name I took a
00:01:05.640 couple years off from doing roller derby
00:01:07.860 and just returned now my number in
00:01:11.159 roller derby is 200 and the reason for
00:01:13.799 that is when you hit me uh I get back up
00:01:17.159 status code okay the irony in that is
00:01:20.400 that I currently have a broken ankle
00:01:22.080 because I did get it a couple weeks ago
00:01:24.540 and said I did not get back up 200 so
00:01:27.540 feel free to use the Q a feature to come
00:01:29.939 up with a new number for me I love my
00:01:32.220 number 200 but um that that story not
00:01:35.400 great so we'll get uh more into my
00:01:38.460 background so this is my pitch to you
00:01:40.200 for why I'm qualified to give this talk
00:01:43.860 um so some would say that I have had a
00:01:45.900 varied career and these people would
00:01:47.700 absolutely correct but there is a common
00:01:49.740 theme my specialty is to be the grease
00:01:52.560 that keeps the gears turning within my
00:01:54.420 rolls just along the way I happen to
00:01:56.399 learn how to code I'm a very loud and
00:01:58.560 proud rubius I am the queen of setting
00:02:01.320 barriers my goal is to reduce chaos and
00:02:03.600 keep Focus within the teams that I work
00:02:05.520 with and my goal as well is to connect
00:02:07.619 people together
00:02:09.239 so before we get into this what does it
00:02:11.580 mean to be technical this is something
00:02:13.260 I've seen a lot of people debate over
00:02:15.599 time
00:02:16.500 as defined by dictionary.com technical
00:02:19.800 is defined as belonging or pertaining to
00:02:22.080 an art science or the like it means to
00:02:25.080 be skilled or familiar in a practical
00:02:27.120 way with a particular art and trade
00:02:29.879 what does that even mean
00:02:31.980 well technical reverse non-technical is
00:02:34.680 a really hard line to Define
00:02:36.200 non-technical skills technically tend to
00:02:39.540 be interpersonal skills which include
00:02:41.819 communication leadership teamwork
00:02:44.400 decision making and situation awareness
00:02:46.700 and really in the end those skills could
00:02:49.620 actually be highly technical but facts
00:02:52.440 are facts if you work in the tech
00:02:53.819 industry you should be considered
00:02:55.560 technical however for the purpose of
00:02:58.019 this talk a person with technical
00:03:00.000 abilities is someone who has unique
00:03:01.920 knowledge on how a system or process
00:03:03.959 works internally I'm aiming this talk
00:03:06.599 for software Engineers but it applies to
00:03:08.760 anybody who is technical
00:03:10.800 and one last note I will keep referring
00:03:13.680 to phone calls now me I actually I
00:03:16.140 absolutely love getting on the phone I
00:03:17.879 had two very long phone conversations
00:03:19.739 with friends just yesterday but for this
00:03:23.280 purpose calls can be phone calls but
00:03:25.200 they're likely to be video conferences
00:03:28.680 so the situation you get a DM the
00:03:31.860 dreaded message they want someone
00:03:33.720 technical on the call and if that
00:03:35.879 statement is terrifying never fear but
00:03:38.760 how did we end up in this situation
00:03:41.819 there is a Wall of Resistance when it
00:03:43.739 comes to developers talking to customers
00:03:45.720 this is a typical conversation where
00:03:48.120 products say developers can't talk to
00:03:50.760 clients A salesperson within your
00:03:52.980 organization says if you talk to a huge
00:03:55.080 client they will ask you for features
00:03:56.580 they haven't purchased and Engineering
00:03:59.220 managers will say it's marketing's
00:04:01.080 responsibility to Define needs we
00:04:03.239 estimate the effort they decide
00:04:06.180 but why is it this way in the beginning
00:04:09.120 you have a small team a couple of
00:04:11.220 Technical and non-technical Founders
00:04:13.080 they can all meet customers together
00:04:15.360 they all find Solutions together it's
00:04:17.579 magical things go well the team expands
00:04:20.220 more engineers get hired more sales
00:04:22.079 people join now more distance is being
00:04:25.139 made from the developers and customers
00:04:27.479 prospects and vendors
00:04:29.759 but what's the best way to handle being
00:04:31.500 the technical contact on a call well
00:04:34.080 it's about taking some steps to avoid it
00:04:36.180 at first it sounds really obvious but
00:04:38.580 there's actually an art to dodging a
00:04:40.500 call
00:04:41.699 this is actually one of my favorite
00:04:43.860 memes and truthfully it inspired this
00:04:46.440 talk we brace ourselves from calls
00:04:48.840 because they can be terrible time
00:04:50.400 wasters we are scared to be tasked with
00:04:52.500 real-time support debug in real time and
00:04:54.900 make unreasonable promises it often
00:04:57.780 costs you more flow time which is
00:04:59.280 something that is so important to us
00:05:01.139 we're being paid to write code not to be
00:05:03.660 in meetings right well let's get out of
00:05:06.240 it
00:05:07.320 part of this is writing really really
00:05:09.720 great support tickets and this is a
00:05:11.880 skill that I have spent many years
00:05:13.560 trying to develop you always want to
00:05:16.440 write well-written support emails and
00:05:19.320 you might get the response that you need
00:05:20.880 so first of all always make sure that
00:05:23.520 you're using a really clear title a lot
00:05:25.740 of email providers Will Group title
00:05:27.720 emails so it needs to be unique and
00:05:29.160 clear the second and be very clear about
00:05:31.680 who you are
00:05:33.300 third what did you try already do you
00:05:36.120 have links nothing is worse than saying
00:05:38.400 did you try the obvious from the support
00:05:40.139 team
00:05:41.100 give them a very clear directive on what
00:05:43.320 action they need to take and lastly
00:05:45.900 we're Technical and with the data as
00:05:48.600 needed or as an attachment don't dilute
00:05:51.120 the message in the Middle with the data
00:05:52.979 that the person needs to be able to help
00:05:54.660 you
00:05:55.380 for them to be able to help you
00:05:57.419 stuck in clear API documentation think
00:06:00.240 of API documentation as a reference
00:06:02.160 panel that has all the information you
00:06:04.320 need to work with the API it tells the
00:06:07.440 partner everything you need to get out
00:06:09.240 of that API so that way they don't need
00:06:11.100 to get on a call with you unordered
00:06:12.780 debug
00:06:14.460 and this is a controversial one and that
00:06:16.860 I'm happy to debate again I am the queen
00:06:19.680 of barriers
00:06:21.060 if I'm asking to be the technical person
00:06:23.220 on the call and they are neither a
00:06:25.020 customer partner or vendor my first
00:06:26.819 entering is to deny it needing a sales
00:06:29.580 engineer is one thing but that signals
00:06:31.500 we need to equip the sales team with
00:06:32.940 better tooling and a roadmap
00:06:35.220 however there are some signs where you
00:06:37.319 should accept joining the call
00:06:39.960 if you are extremely vested and yes I am
00:06:42.419 proud of this this uh image there are
00:06:45.000 definitely times you should accept the
00:06:46.199 call if asynchronous communication is
00:06:48.660 not working for you so far the
00:06:50.580 relationship is incredibly important
00:06:52.139 within your company and you suspect this
00:06:54.360 could be an issue with something that
00:06:55.680 you were responsible for
00:06:57.360 taking a call can result in a net
00:06:59.340 positive gain when you calculate the
00:07:01.199 cost of the call literally factoring
00:07:03.539 your salary into an hourly rate you need
00:07:06.240 to calculate if it will end up being a
00:07:07.919 net positive for you to take that call
00:07:09.419 if losing the MRI of this customer or
00:07:11.880 partner is high and will take up more
00:07:13.680 engineering resources to figure it out
00:07:15.419 take the call
00:07:16.919 and like a good test it is all about the
00:07:19.199 setup before you execute the call
00:07:21.539 so let's start off with an example
00:07:23.400 scenario you are deprecating your public
00:07:26.039 API at your company the deprecation is
00:07:28.680 scheduled and you are absolutely eager
00:07:30.479 to retire the services and of course you
00:07:32.819 know delete the code except your chart
00:07:35.039 partner just alerted you that they are
00:07:37.020 blocked on pivoting from your version
00:07:38.400 one endpoint to version two so you're
00:07:40.740 going to take a call to identify the
00:07:42.360 blockers so you want to identify the
00:07:44.819 right people for the call you do not
00:07:46.500 want a committee for people and most on
00:07:49.020 the call to stay effective you your
00:07:51.479 second in command their technical
00:07:53.099 contact and their Advocate to get the
00:07:55.380 API transition complete
00:07:57.780 ahead of the call make sure the advocate
00:07:59.819 of the call includes a concise agenda
00:08:02.160 this keeps everyone on point prepared
00:08:04.560 and you will not drift into somewhere I
00:08:06.539 like to call feature request Fantasyland
00:08:09.240 if it is not on the agenda the answer is
00:08:11.280 I don't know but I will get back to you
00:08:13.319 and in this case the API deadline needs
00:08:16.080 to be at the very top of that agenda
00:08:18.300 make sure that you sync internally
00:08:20.039 schedule a quick meeting to confirm
00:08:21.900 goals and get a feel for known
00:08:23.520 personalities and I think you all know
00:08:25.259 what I mean by known personalities
00:08:26.960 perhaps include some secret cues to keep
00:08:29.580 the conversation on Pace and we want to
00:08:32.279 make sure that we connect on whether or
00:08:33.659 not we knew that this customer was
00:08:35.279 struggling with making this API
00:08:36.839 transition
00:08:38.279 the day has arrived it's now time to
00:08:40.500 execute the call
00:08:41.880 this might seem really obvious but bear
00:08:44.039 with me it's really easy as technical
00:08:46.380 people to want to grab the keyboard and
00:08:48.480 start driving but step back and listen
00:08:50.880 and make sure you know exactly what the
00:08:52.620 other participants are experiencing and
00:08:54.720 why the more they talk the likely they
00:08:57.480 are to admit the real problem they
00:08:59.700 forgot to make the API transition or
00:09:01.980 someone who departed who is in charge of
00:09:03.720 this has gone
00:09:05.820 it's incredibly frustrating to find out
00:09:07.800 that there was important information on
00:09:09.300 a call that was not shared with
00:09:10.680 everybody within the company this often
00:09:12.839 leads to why these calls happen to begin
00:09:14.399 with so make sure you designate someone
00:09:16.620 to take notes and get permission to
00:09:18.360 record the call
00:09:20.040 and remember no live debugging if you
00:09:23.040 find yourself opening a rails console or
00:09:25.019 your logging tool stop right now it's
00:09:27.660 not the best use of your time or your
00:09:29.399 partners rather if they have
00:09:31.019 reproduction steps that need to be
00:09:32.519 inspected you can get that after the
00:09:34.440 call
00:09:35.880 it is totally okay to have some small
00:09:38.100 talk about your favorite show anybody
00:09:39.839 else Watching Ted lasso right now or you
00:09:41.820 know maybe CrossFit but once the call
00:09:44.220 has started stay on topic Envision you
00:09:47.220 are actively throwing in callbacks to
00:09:48.959 get your to get the conversation back to
00:09:51.000 that API transition
00:09:52.980 and this is probably most my most
00:09:54.839 important slide in the entire the entire
00:09:57.180 presentation is elevate your second in
00:09:59.339 command while you are considered the
00:10:01.440 most technical person on the call it is
00:10:03.480 your job to elevate your second in
00:10:05.100 command this might be reiterating that
00:10:07.260 they can get you the answers that they
00:10:08.820 have or they have dealt with this
00:10:10.140 situation before and they know what
00:10:11.760 they're doing the goal is to lessen the
00:10:14.700 per the customer the partner vendors
00:10:16.680 dependency on you and they see your
00:10:19.080 second in command as truly competent
00:10:22.140 and remember make sure that you're
00:10:24.480 translating during the call it is
00:10:26.339 incredibly rude to not remember that at
00:10:28.920 one point in our lives we were not
00:10:30.480 technical don't forget that it is rude
00:10:33.060 using exclusively technical language in
00:10:35.279 front of non-technical stakeholders
00:10:36.899 without offering a translation so here's
00:10:39.660 an example so you could have said I see
00:10:42.540 so the issue that you're having is that
00:10:44.040 you were expecting an XML payload from
00:10:45.779 V1 but the V2 API only offers Json you
00:10:49.079 will need to migrate to Json or find a
00:10:51.360 library that will help you translate
00:10:53.120 instead you can say that but then
00:10:55.680 afterwards you say the data format that
00:10:58.620 your team is expecting from us is
00:11:00.180 different than what we are sending your
00:11:02.160 team is going to look into solutions to
00:11:03.899 accept that
00:11:05.640 if you get an agenda of the call done
00:11:07.740 early end it early we need to make it
00:11:10.200 clear that your time and their time is
00:11:12.180 valuable repeat the conclusions made the
00:11:15.420 partners committing to moving your V2
00:11:17.160 API by April 30th agree to the handoff
00:11:20.100 that your second will complete within 24
00:11:22.620 hours of the call
00:11:24.660 of course the follow-through as I've
00:11:26.579 mentioned all good calls have followed
00:11:28.320 through so you don't have to schedule
00:11:29.399 another
00:11:30.540 make sure to tag your tickets if you
00:11:32.700 discover it's an issue on your side you
00:11:34.440 write those tickets immediately and tag
00:11:36.000 your engineering manager to get them
00:11:38.100 prioritized ASAP tag your second in
00:11:40.980 command so they can see the work that
00:11:42.360 you are doing to help support their
00:11:44.160 message their mission
00:11:46.200 which leads to being an email Whisperer
00:11:48.720 remember how I said you need to empower
00:11:50.519 your second in command it continues here
00:11:52.760 internally you need to feed them
00:11:54.720 technical details so they can they can
00:11:56.579 send the most brilliant follow-up
00:11:57.899 afterwards this further instills that
00:12:00.240 they are the lead here not here
00:12:03.000 now once the version one API is
00:12:05.339 deprecated likely behind schedule you
00:12:07.620 want to have an internal retro as to why
00:12:09.899 technical intervention was needed in the
00:12:12.420 first place
00:12:14.760 in the end there are some actual
00:12:16.680 positive things that come from being
00:12:18.300 able to do technical calls well
00:12:21.360 you can have a fantastic career as an IC
00:12:24.120 as a manager as a Founder however
00:12:26.640 there's no way to progress in your
00:12:28.200 career without getting good at dealing
00:12:29.640 with other people you can be a hero by
00:12:32.279 helping others get other things done the
00:12:35.220 game is to do it with the least amount
00:12:36.839 of effort as possible
00:12:39.420 In The End by taking these technical
00:12:41.519 calls you learn about trust developers
00:12:44.100 can hear feedback from the source and
00:12:46.260 get to trust the existing requirement
00:12:48.060 management process
00:12:49.860 you can get Innovation from it the
00:12:52.440 developer can notice client problems
00:12:54.300 that can be addressed by new technology
00:12:55.920 that they are evaluating
00:12:58.560 motivation developers are motivated by
00:13:01.320 meeting clients who like whose life is
00:13:03.420 impacted by the products they deliver
00:13:05.760 and time developers can ask
00:13:07.860 clarification problem or
00:13:10.500 time developers can ask clarification
00:13:12.540 questions that would take days or weeks
00:13:14.459 to go back and forth through all the
00:13:15.839 intermediaries so in the end maybe next
00:13:19.260 time you pick up the phone
00:13:21.959 oh and Maybe Call Me Maybe I can't
00:13:25.139 imagine a lot of questions will come
00:13:26.700 from this but if you have a funny or a
00:13:28.680 tragic technical story to share please
00:13:31.380 find me posted in the chat I would love
00:13:33.720 to hear it and thank you all so much
Explore all talks recorded at WNB.rb Meetup
+20