Designing as a Developer@ Golang NYC Meetup

October 27, 2021

< 1 min read

Designing as a Developer in GoLang
Gone are the days when Software Engineers can assume the User Experience (UX) and User Interface (UI) is somebody else’s problem. The disconnect between Design and Development can often be a fatal one, with the success of your software implementation potential in jeopardy. In this talk, we look at The 7 Facets of User Experience by Peter Morville and how to consider them from a technical development point of view. We will also look at the “whys” of a design, so you can build a product that excels in functionality without compromising the designer’s vision.

 

View Slides Here

Speakers

Sushrut Athavale

Software Engineer- Partner Engineering

Sushrut Athavale is a Software Engineer at JFrog on the Partner Engineering Team. He is a Full Stack Web Developer who is skilled in object-oriented languages including GoLang, Python, C++, and Java. He also has a passion for UX & UI design principles. When he is away from the keyboard, Sushrut loves to perform in the theater as opportunities arrive, and he considers himself a movie buff.

Video Transcript

and
i’ll turn it over to you sushrut
uh thank you ari Text
uh hello everybody my
name is sushrut atheville and today i’m
going to be talking a little about
design and designing as a developer
using examples in golang
first uh let me give you a little bit
about me
my name is sutra datavale i’m a software
engineer at jfrog i’m a devops developer
i’ve used a lot of go i’ve done a lot of
front-end design as well um in my free
time i like to play games and watch
movies and
uh go on bike rides with my brother um
and yeah if you want to follow me that’s
my twitter account
uh
so
a little bit about why i wanted to talk
about design and development today um so
i used to work at amazon i did a i did a
short internship there and and during my
time there uh we had a whole design team
that would tell us um
how that would tell us um
what to do and then we would just
implement that and often our progress
would come out as mediocre our users
would give us mediocre reviews and we
couldn’t figure out why and we knew that
it was something about the disconnect
between what our design team was telling
us and what we were actually developing
on the front end
and so after that i went and i learned
some design principles and then i went
back and i figured out like oh the
design team was trying to
um do certain things in their design
they’re trying to follow certain rules
and
as a developer i was trying to follow my
own rules i was i was limited by the
technology and the frameworks i was
using at the time and a lot of the time
what the design team
built and what we could develop didn’t
match and that disconnect was fatal for
our our project at amazon
and in retrospect there was things that
we could have done if we had understood
what the design team had actually why
there if you’d understood a lot of the
whys um in their in their design process
and so that’s what i’m going to be
talking about today and i’m going to use
some examples in golemic
now the
basics of design can really be boiled
down to some of these seven facets of
user experience and these are coined by
someone named peter morville he is a
graduate from the university of michigan
and he has been in the industry for over
30 years
he has his own consulting company for
design and he’s consulted for a lot of
companies such as google
he coined these seven facets and their
used and and you’ll find them um all
over the internet all over books and
they’re they’re very
good example of
what user experience um
they’re a good set of guidelines for
user experience
i’m going to be talking about these with
some examples and goaling
a lot of interfaces you use in golang
will be if it’s on the server side
whoever is using your server or if it’s
i’m more going to be talking about
something i’ve worked with which is
golang command line interfaces
um
so without further ado let’s let’s get
started
uh
so let’s start with the first um
the first facet of design and that it
needs to be useful
this one is self fairly self explanatory
anything that is
useful uh issue is something you should
make but also at the same time don’t
forget when you’re building something if
it should be useful or not
there’s a lot of things you can do with
technology that’s very cool but it
doesn’t really have much use one example
is i know a lot of developers and myself
included when i first started learning
bash i learned uh in other scripting
languages
um i learned that like wow i can script
everything i i can automate all of my
tasks and i ended up spending four hours
once automating a task that you do once
for 10 minutes
and
in retrospect that
that it’s not worth automating that task
on that small scale and in a larger
scale
it’s just not it’s it’s useful to me but
it’s not really useful to the team it’s
it’s not really a useful piece of work i
put out there
and in that sense usefulness is in the
eye of the beholder so you really need
to consider your customer
your users
and your your colleagues when you’re
thinking about it uh i have a uh
i have an image of a nintendo game here
also called i as beholder because games
are something that are
objectively it doesn’t have that much
use right it’s only used for
entertainment so for someone like me who
really enjoys games it is useful but for
someone like my my parents this is not a
uh not a useful spending expenditure of
time
um so that’s usefulness uh in its basics
the next facet
it should be usable
so useful means that people want to want
to use your thing usable means that
people can use your thing um
three examples of useful uh iphone apps
here robinhood venue and
uber
and they both disrupted industries that
already existed by just making something
that is more usable
uber for example disrupted the taxi
industry it made calling for taxis and
just hey hey
you no longer have to do it on the
street and that made it very people
liked it for that reason
venmo there were peer-to-peer
transaction services before this there
was paypal there was banks did
peer-to-peer transactions but it wasn’t
really usable for the average person if
you wanted to do a peer-to-peer
transaction at a restaurant you couldn’t
and venmo solved that problem while also
making a really usable interface
robinhood they did retail investing they
did the same thing for retail investing
these other two did where they did
something that people were doing before
but just made it far easier to use so
when you’re thinking as a developer um
to when you’re making something really
think about the things that that your
customers are going to want out of this
and and really think about how
um
how it could be usable in the amazon
example i used earlier a lot of we would
get a lot of feedback for this that our
product wasn’t usable it isn’t easy to
edit the images on the front-end design
task i used and i really had to go back
and look and see what the reason was and
that’s because something that i had done
a million times before
a customer couldn’t do on the first try
because i’ve never seen it before
so really take your time and test it if
you’re developing a command line
interface and go for example
have someone else on your team use it
who hasn’t seen it before and and sit
there behind them and watch them as they
try to use the future you just develop
and you’ll
you’ll learn a lot from that
um and it will help develop a lot
okay so those first two facets
facet number three okay this is where we
start getting into into more
meaty facets findable is another
measurable
um design facet that you can use
findable is also referred to as
discoverable in other uh in other
communities online and it generally
relates to the organization of
information and how
to find your features in it
a great example of findable is if you’re
building a command line interface like
the kubectl or
controller
um
you have the you you can just call
kubecuttlehelp and you have this list of
basic commands and more cans past that
and then
and then boom all your commands are are
easily findable you can you can figure
out man i want to do something more
intermediate you go to the immediate
section and then the the exp explanation
is there more good cuddling commands are
there
another really interesting way to make
your stuff findable
isn’t just to make it uh easy like
something like this but is to follow
industry standards
so as a devops engineer i have worked
with kubernetes a lot and i’ve built um
products with uh previous companies that
build on top of kubernetes and interface
with it
and so one thing we did was that when we
were building our own command line
interface on top of kubernetes was to
follow the design standards that
kubernetes had established when they
developed this controller
so this controller if you want to build
something you do coop cuddle create and
then the object you want to build as
opposed to
the cube cuddle the object you want and
then the action you’re doing on top of
it which is also valid i want to
have an object that does this or i want
to i want this object i want to create
it
we decided to follow the cube cuddle uh
approach whereas kubecuttle create this
and all of our crud operations were
create update delete and then the object
afterwards
um and
when we tested that because it you can’t
test that we found that
um all of our uh customers were really
it was really easy for them to figure
out what was going on and it was really
easy enough to for user product as
opposed to um when we did it the other
way around because they had worked with
coop cuddle before and that was the
customer base we were targeting
that was also something that we didn’t
have a designer that’s something us as a
development team had to choose ourselves
and it really
helped improve our product there
so make things findable
the next facet
credible
credibility
as opposed to
the first two facets of usability and
findability is something that is
intrinsic to your product
it is harder to measure than findability
if you want to test if something’s
findable you give it to someone else and
see if they can find the feature
but credibility is is built on on
reputation it’s built on professionalism
uh one great way to make something
credible is just just pure
professionalism in a presentation or
documentation you want straightforward
messaging minimal typos etc
there are also industry standards for
credibility something that people used
to do was that they would provide
documentation that you could download or
you could print
but now if you have a documentation
online that is something you download
people aren’t going to trust that people
aren’t going to want to use your product
why do i have to download this
documentation why isn’t it publicly
available
um and a lot of developers see
the world that way now so it’s
people are expecting easily available
documentation that is
um
uh available on websites as opposed to
something invalid
um another
example of credibility that i like is
cobra cobra is a framework i’ve used for
goal line before and it helps you build
command line interfaces
and
the
great thing about cobra and something
that really helped it gain traction is
that it really tries to stick to the
paradigms of go um it’s imperative it
keeps
all the benefits of concurrency and it’s
easy to learn um and
because cobra really stick to what go
was trying to do when it was built um
all go developers um at least the ones
i’ve talked to uh really like really
like probably because they
you can build credibility um off of
another
someone else who’s also built
credibility if you’re liking your
product to theirs or
attach your product with them
so then how as a developer do i build
credibility in in
in my tasks um again just like make sure
everything’s clean proofread your your
projects proofread your code if
anything’s going to be open source that
means other people are going to read it
um
it means that
you know like
don’t don’t put sloppy variables or
stuff like that because it it it matters
when people are trying to to contribute
or or or add to open source projects
so that’s credibility it’s fast number
four
okay facet number five
desirable
this is another intrinsic um
design aspect it’s like credibility in
that sense where
it’s hard to measure if something is
desirable
you can you can compare you can do focus
groups testing to see and give your
product stuff three people uh give three
your product and two competitors three
people and see which one they choose uh
just based off of branding alone
uh but it but it’s hard to test um
and and
making something desirable is
uh
extremely important um one example i
like to give is is tesla tesla has made
e-vehicles
um and people really see e-vehicles at
least over where i am in san francisco
as um as a and tesla’s e-vehicle
specifically as something that is like a
status symbol like hey i’m a software
engineer in the bay and you know i’ve
made it when i’ve bought my first tesla
um but you know there’s been a lot of
objective reviews of tesla’s around and
especially earlier their internal
interface kind of kind of stinks the one
panel system um isn’t really easily
usable it’s hard to figure out like how
to change the temperature or do it if
you haven’t done it before especially
when you’re driving
um and so
and so that is uh and so that was um one
of the things that um
that really set tesla’s apart was they
managed to set themselves as a desirable
um uh a brand a company
so one example of something else in in
development that is really branded
themselves as desirable is is go go is
really desirable right now according to
a hired report on go develop uh in on
the state of software engineers in 2021
goes 2.3 times increase in interview
requests for go developers they’re
really really desired right now um and
it’s it’s interesting because go is
super useful it’s a good technology but
it’s not there’s a lot of things in go
that you can do with other languages um
go is really good at the things it does
um but
this but what really helped set it apart
was it’s it was backed by google it uh
it was really easy to learn and those
paradigms made it made made it desirable
and that desirability factor that
intrinsic value is what’s helped is part
of the reason not all the reason but is
part of the reason it’s propelling out
today um and that’s why that’s why i
learned go last year
and the year before
okay
so
accessible
this is i like talking about this design
aspect the most because there’s a lot to
discuss here it’s a very broad topic and
it’s often overlooked by it by by folks
accessibility can mean a lot of things
one of the things accessibility can mean
is it can mean
designing for disability designing for
folks who have disabilities that is one
of the things that ex making something
more accessible accessible it can be
a lot of um higher ups of product
managers ceos etc will often say hey we
don’t have the resources to make
something accessible it’s not worth the
cost for the user base we’ll
we may achieve from that
that in itself may be just wrong a wrong
idea according to the latest census 20
of americans suffer from some kind of
disability whether that be vision
impairment hearing impairment physical
impairment cognitive disabilities
etc but that’s one in five americans and
if you aren’t trying to make your
product accessible you’re losing out on
a lot of customer base
um and this is something that a
developer really has a lot of access to
um but before i get that let’s go
through some examples accessibility
so one really old example of
accessibility is subtitles subtitles
were made for people with um
hearing impairments who couldn’t hear
movies or tv so i said you know what we
can easily add subtitles to our our tv
shows and that a lot got a lot more
people
watching
but one cool thing about accessibility
and this example subtitles is that
making something more accessible will
make something way more usable as well
and they found that with subtitles
a lot a lot a lot of people use
subtitles who aren’t hearing impaired
because subtitles are just a generally
good feature
another thing or another example of this
is the xbox accessible controller in the
bottom right here this controller was uh
made
by xbox for people with physical and
cognitive disabilities to be able to
play their games they got more cells for
it they got more public declarations for
it and something else found is that this
controller is highly customizable it can
really be adapted to suit whatever your
needs are and wherever your hands are or
wherever your feet are etcetera it can
be used by a wide range of people but it
can also be used uh
in development of robots a lot of
robotics companies love the
accessibility controller because it has
a lot of buttons it has a lot of buttons
you can customize and reprogram very
easily and it’s a solid working
controller and that’s another
accessibility being used to create
something greater
example for golek golang wanted to be
easy to learn as one of their paradigms
and so one thing that isn’t in golang is
the ternary operator
in other languages you can do
a boolean expression and then
depending on the falseness or truth
truthiness of it you can do one or the
other expression all in one line
but the ternary operator is
difficult to understand for a beginner
it’s after you
learn it it’s hard to read
uh it’s controversial actually when in
development communities because a lot of
people like it a lot of people don’t
like it
golang said no we want to be easy to
learn and easy to read and we think the
ternary operator violates those
paradigms so they purposefully left it
out of the language as a
in deference to just a simple if else
um and that’s that’s one way they made
things uh accessible
um
so when you’re thinking as a as a
developer
and you’re getting a design you wonder
why something right there might be there
it might be because it’s still
accessible but even as a developer it
you can think of things like hey i can
build this in a certain way or or think
about like if
think about try and think about what
happens if you only had one hand or if
you’re colorblind colorblindness is a
really easy thing to design
accessibility features too um you just
change the colors and use color palettes
that are suited for colorblind
individuals
and with that you’ll get a lot of
positive pr you’ll get a lot of good
user feedback from it
that’s accessible
last one is valuable this is the last
one
you should make something that is
valuable um that it’s very much uh
the the capitalism uh
in in in product making uh you if you
want to build something you need people
to come to you you need to be able to
sell it to them
you need something that needs to be
valuable to switch
and so when you’re developing a new
feature it’s important to determine
whether or not this is an actual
valuable thing
one of the
easiest examples of something that’s
valuable is google
and google
solved like hey i want to search
something and then they built their
search bar but the interesting thing
about this google home page is that it’s
changed very little since when it was
open because google knows that the most
valuable thing about their home page is
the search bar so that’s why they don’t
clutter their home page with very much
very little
other than just their search bar they
added some voice features they added
bookmarks to the bottom but the building
that’s most permanent is their search
bar because they know that’s why it’s
valuable
as a developer i found myself thinking a
lot of the time
um great i i’m making a valuable product
i’m adding the value of the company with
my development work but i don’t think
there’s much i can do past that
and the
interesting part about that is
is that value can often be measured in
terms of cost as well
like
the product manager is the one
determining which features to be done
but as a developer i’m the one
determining how much that feature costs
in agile um systems for example i’m the
one who’s giving it story points i’m
saying that this is going to take 13
story points of times i’m the one who’s
saying that this is going to take a lot
of cloud resources
um
and it is up to me in in that sense to
determine cost when we’re ever giving
all those estimates we are determining
cost
and when i realized that i realized that
i
that means i have control in adding more
value to the company through
um effectively managing that cost i’m
not just giving an estimate uh for the
future if i can figure out some other
way to to do the same thing the designer
did that is lower cost i’m adding value
to the company if a designer wants me to
do something that i can’t technically do
in my go uh system for example uh
go doesn’t do
like the exact thing they want but i can
figure out another way to do that with
the tools i have available and lower
costs then i’m going to
remove a lot of those disconnects from
design design and product and they they
just want you to be able to
they decide what’s valuable
and you get to decide how valuable it is
and so once i realized that i i started
to be able to
really like
i gained a lot more confidence in myself
when i was pushing back on some things
product was saying when i was saying hey
i think this will cost too much i think
we should do this other way and i
knew that would resonate with them
because i was talking in terms of value
here
so those are the seven facets
and individually they’re fairly easy to
understand um they’re fairly easy to
work with i can make something more
valuable or findable
but the interesting thing about um
these design facets is that they have to
work together and you have to make
decisions based on what you know of your
user base
on what’s more fine
a great example is aws
aws
uh
in my opinion
is very confusing to to to read when you
first start using it you log into the
aws console and you click on the left or
top left somewhere and see all the
products and all things you can use and
you get a huge list of all 1500 things
you can do in aws
and for someone who just never used it
before it’s really hard to find things
in aws
but
the beginner is not who aws is targeting
aws is really targeting companies they
really want to sell infrastructure as a
service and so for those people they’re
most of their user base is customers and
abs understands that so they care way
more
about their um platform being useful and
usable
uh as opposed to findable
uh something i can liken it to is a
pilot’s cockpit uh when a pilot is
flying a plane there’s a million and one
buttons in the in the front of a cockpit
and i have no idea what it does but a
pilot knows what every one of those
button does and it’s really easy for him
to just press every uh every single one
of them
it’s really usable for the pilot because
every action has one every task has one
button specifically for it and then aws
is a lot like that if you want to do x
thing you just click x thing and it’s
not obfuscated by something
if you wanted to make something um and
so it’s it’s it’s
not like that
i it’s it’s an interesting uh you could
make the argument that it’s findable as
opposed to use anyway one one other one
other thing that you could do with
usable is you could obfuscate
information um you could hide all those
aws things and it could be one two three
only five things you can see at
something and so you can find those five
things really easily
um but it’s not very usable because you
can’t if you wanted to do more than just
those five things it’s all in the
background and you have to really dig
deep to it so that’s that’s the
trade-off that amazon chose they decided
for usability over findability and when
you’re looking at more than one facet
all at once it all starts to get like oh
okay
and then that’s where the developer
comes in because a lot of the times
developers are separated from their
customers but in the devops industry for
example i’m a devops developer but i’m
also a devops user so i know the pain
points of a developer and i can make the
case to my designers to my product team
that hey um if i was a developer here if
i was using this goallink server i
wouldn’t want it like this if i was
using the ci i wouldn’t want it like
this because i think most people who use
our products are experts and i think we
should more focus on
find a usability here as opposed to
findability
etc
um and so that’s that that’s where all
these facets come together and that’s
where you as developer can can really
help
build
better products and remove some of those
fatal disconnects and and make it so
you’re uh
and really like push forward so that you
can become a better developer
and and more with and get more
well-versed better design products
so those are the seven facets of user
experience um they’re the basics
of design a lot of people talk about
them online now
there’s a lot of different ideas and
design and they all rotate around these
these ideas now
um like i said before uh peter marvel
was
the one who
i got this blog
i got this information from and i
learned about him in when i was taking
some classes as well
if you want to learn more directly from
him his company is called semantic
studios and the blog post uh where he
first talked about some of this stuff is
called is linked here user experience
design
if you are curious about design in
general for for architecture uh and and
developers you can look at some of these
design books he made
um they
dive deeper into some of these facets
for example search patterns designed for
discovery is all about definable
and then a book i really like by dan
norman
is called the design of everyday things
and it is not a technical book he talks
about the design of
everyday things you see like doors
coffee mugs um chairs
tissue boxes markers and everything it
really delves deep into how those things
were designed and some earlier designs
of
of terrible and he really talks about
like wow imagine if a coffee pot had the
handle on the spout on the same side why
would you ever want to do that and he
makes a case for it and then demolishes
it because you don’t want to get hot
coffee in your hands
um
but if you want more information that’s
there uh but then other than that like
thank you everybody uh for having me
today
and if you have some questions please
feel free to ask
the chat here
well that was really uh really great
sushruit thank you so much uh i think
that uh you really gave some uh
really really important insights tonight
and uh i think a lot of people
appreciated that um is this the first
time you’ve given that talk
yes yeah wow gosh geez and uh man i this
i hate to be i’d hate to be the speaker
that has to follow this talk geez
[Laughter]
yes i am but really really a really
awesome job um
what questions do we have i saw i saw
one question in the chat a little
earlier
um
and i’m not sure if i if if i’ll be able
to mention it do do it justice and
contact from john uh was the was the go
increase for go after the visual rebrand
uh does that do you have enough
information there to answer that i don’t
have enough information i can give you
more information on the hired report so
the hired report was uh finished in 2021
about 2020 as a year and a half
um so i don’t ex i don’t remember the
exact year that go rebrand done they
didn’t do any study in there as to
actually figuring out why they just
reported that people wanted more go
developers
ah gotcha that’s okay john did you want
to uh did you want to did you want to
come off mutant answer
or ask gravity uh yeah that that did
answer my question it wasn’t uh there
wasn’t a connection to the
to the visual rebrand making an increase
it was just that it was a popular
language so that that does answer it
thank you
gotcha um anybody else have any
questions uh before associate tonight
going once
going twice
okay well awesome well if you think of
any before the end of uh the
presentations this evening please don’t
hesitate to ask um and shrewd really
awesome job and thank you so much for uh
sharing with us your insights tonight
thank you thanks for thanks for having
me and i look forward to your talk
awesome thanks well uh
let me go ahead and uh i will do my best
to stop let’s see here start my share my
screen share
um
so
let’s see here
great
so
uh i know that uh some of you uh have
been coming consistently to to the group
um i’ve been uh
involved for the last uh year or so in
helping co-organize golang new york and
it’s really it’s really been awesome
um but before i had the opportunity to
join uh the developer relations team at
jfrog
i spent about
23 years as a technical recruiter
in the staffing industry everything from
doing hands-on production recruiting to
leading a team to training a team i even
held the title chief recruiting officer
at one point in time as well so um one
of the uh things i wanted to talk to you
about because i is choosing a technical
recruiter that’s worth your time and i
probably don’t have to say much more
than that for those who are in the uh
industry and get contacted so often
but uh just a little bit about myself i
mentioned that i was doing recruiting
for a long time and um i have also
started assisting the go san francisco
group in terms of trying to relaunch
some of their activities uh as we
hopefully get out of this pandemic
in the virtual environment and move back
to a face to face
um i do work for jfrog and my actual
title is meetup event manager so i guess
it’s really um safe to say that meetups
are a good portion of my life so i
really enjoyed them i’ve probably sat in
about 300 in the last two years um and
uh just really uh and really enjoy that
opportunity to uh
be part of different communities
globally and as some of you may know or
may not know i am best known for being
the father of many um i have the
privilege of being the father of seven
children um so uh that’s uh that seems
to be unique these days and usually some
of the follow-up questions are about my
seven kids and not necessarily what i
spoke about and if you have some of
those questions that’s fine too so with
that being said um i wanted to share the
qr code for those who came late um
tonight uh you’ll be able to see my
slides and shoe shred slides on uh on
the link that you see here
and you the first 15 people to come in
and fill out a raffle form tonight it’s
not really a raffle uh if you if you
fill out the form we’re gonna send you
our annual jfrog limited edition t-shirt
as well as a copy of the liquid software
book um on devops so um it’s a it’s
something that we are excited to give
out to the community and i don’t believe
again we’ve given out a t-shirt this
year um to go to lang new york so this
is great
i also have some talking point sources
so the things i’m going to mention
tonight in case you want to
look them up yourself in fact you
probably will want to look up some of
the stats yourself um you’ll be able to
see that on the page also so
you’ll also see both my slides and
sushrut slides and we’ll eventually post
the video so that being said
um
you know one of the
common questions that we ask at jfrog
before we really get involved in
anything is what’s the why
why am i even here talking about this
tonight um and the reason is is because
you know a lot of times we get so many
calls um from whether it be uh
telemarketers or in for technologist
recruiters and a lot of times we just
kind of uh you know kind of go into
processes for opportunities and
interviews with maybe not a lot of
consideration in terms of who is
actually representing you
um and the way i look at and the way i
look at this topic is you know if you
were going to hire an accountant or if
you were going to hire a doctor or a
lawyer to represent you professionally
you’d probably want to interview them a
little bit so i want to talk to you a
little bit tonight about how to choose a
technical recruiter really that’s worth
your time
how to get past
all the noise that you see and really
pick people that are going to represent
you well especially in something so
important
as your professional life you know one
of the things about software development
that’s really great especially for all
of those here tonight who are part of
the community is i’m assuming that
you’ve entered this profession because
it truly is something that you love and
i know that i’ve had the privilege of
working jobs that i love almost my
entire career
and in saying that that’s really really
important because as they say if you
love what you do
then you really aren’t like working
you’re kind of just really living your
life and i’ve really had a unique
privilege to do that and i hope that you
have that opportunity
as well with whatever you’re doing right
now so
being able to pick somebody that’s going
to help guide your career especially
taking you from one step to the next
if that’s even something that’s
important to you is really really
something that needs to be considered
and
um and
thoughtfully so let’s we’re going to
look at a few of those things but before
we dive into that i just wanted to share
a little bit about um what’s going on in
uh
in the job market a little bit today now
i’m not sure how many of you have ever
heard of cbre but cbre is a commercial
real estate company um that does
extensive research um on the technology
industry in fact when companies like
amazon and google are thinking about
opening a satellite office they’re going
to consult cbre most likely or another
company of its stature
to see
how the market is
for them to be able to place an office
there what type of technical uh
technical uh population is there to
support that environment so cbre every
year comes out with something called
their s their uh scoring their tech
talent
and um new york um ranked number five in
the top 50 places uh for companies to
have
a satellite office and that’s based on
many many different factors it’s based
on
the number of schools the number of of
technologists that are anticipated to
graduate within a particular uh time the
number of existing technology
professionals that are already there the
cost of real estate and um the other
companies that have invested in real
estate in the area so new york is listed
as number five so for those of you and
i’m as as i believe most people here
tonight or part of the golang new york
group are in in new york or the new york
metropolitan areas it’s important to
know that you are in a really really
good location um as it relates to the
tech industry
um just a couple things um i’m not sure
if any of you are familiar with dice
most people think of daiso yeah that’s
just a job board but dice actually
especially for a technical recruiter is
much much more resourceful than just a
job board sure there’s resumes out there
in short we can put job postings out
there but dice and bess’s invests quite
a bit of money
in doing a lot of research research um
on it professionals because that’s the
entire job board focus so when you go to
other
job boards like a monster.com and um
careerbuilder they’re more of a general
uh job board i but dice is
primarily focused in information
technology so it’s always been a great
resource to me
especially as it relates to some of
their research and highlights
today i did a little search on dice to
find out how many jobs were posted
just in the new york metropolitan area
within a 50-mile radius and
um we today there are
6835 full-time jobs followed by
5148 contract jobs posted just in the
last seven days so that should give you
some idea about the i.t demand that’s in
the marketplace right now um
as far as go developer
opportunities within those job listings
there were 609 full-time opportunities
and 437 contract opportunities now let
me let me um
uh clarify that a little bit
just because this does include jobs that
go appears
um in the search
so um i want to make sure that that’s
very clear that um if it doesn’t mean
that go is the core language a lot of
times you’ll see that you can have one
language and they list go secondarily
but the bottom line is is go is an
important enough language in the uh
in the ecosystem of technology these
days that it is
it is ranked very high in fact if you
look at the num percentage of jobs
nearly 10 percent of all full-time jobs
go was listed in the description as a
important skill set or a good skill set
to have so just some insight there in
reference to
what the current demand is in the
marketplace
something else that dice does really
really well and again this is not a
dice.com commercial but again it’s just
one research it’s one resource uh which
has some great information is dice puts
out about a 20 put out a 2021 salary
survey they do this every year there’s a
lot of great surveys out there glassdoor
does one robert half that’s a really
really good one um and and i think also
uh there is one of the big four
consulting companies i just don’t
remember which one puts out a really
really solid one as well um and
new york
in new york the average it salary is 114
274
now keep in mind that that is for
both the
help desk profession all the way up
through the
it manager and everything in between so
if it sounds like it’s low well you know
it all depends on all depends on
perspective and this is typically
somebody mid-career uh mid-career
experience obviously most people don’t
come out of school making that much
and at the same time if you have more
than five to six years experience
chances are you may be making more so
just something to consider and by the
way this salary is up 11.67
from last year so because of the demand
for technical skills um it is on the
rise
uh go average salaries nationally by the
way we’re 128k and that’s not new york
only that is
um that is on a national basis so go i
believe was ranked number two in terms
of skill sets for developers to have so
why it’s while it’s not necessarily the
most widely uh
most widely used development language
it’s not the biggest population of
developers this is probably a good
indicator as to why the salaries may be
above
other development languages where there
may be for example more people available
within that particular skill set so it’s
a it’s it’s it’s uh got enough it
definitely has enough traction uh to be
dangerous and of course something to be
beneficial for people who are focused in
uh go software engineering so i wanted
to share that for uh for you because the
question is what does this mean for go
developers and what does this do
what does this make you um in the
marketplace and what that does is that
puts a huge target on your chest and
technical recruiters are looking for you
um and
i probably am not sharing anything you
don’t know if you have a linkedin
profile if you ever accidentally posted
a resume and it was only an accident
after your voicemail was full um you
realize that you are being sought after
and that recruiters really really want
to get in touch with you and they come
in recruiters come in all shapes sizes
um and different pedigrees but they’re
looking for you uh for the jobs that
they have open because there’s no secret
that the it and especially the software
development field
is very very very uh short of supply
shortened supply of
great developers
and a lot of opportunities available
so you get home from work or you know
actually you’re probably working from
home so you actually check your personal
email and your linkedin your linkedin is
full of messages your gmail is clogged
uh your voicemail if you have a
voicemail and hopefully you’re using
google voice to screen it by now is full
and by the way your text messages are
full all of opportunities the best
opportunity of your life is is is in
front of you and the recruiters are
reaching out
so it’s a lot the problem is there’s a
lot of noise because here’s the thing
you you always want to be careful you
don’t want to throw out um you know
indeed the old i mean it sounds such
like an old fogey but you don’t want to
throw out the baby with the mouth on the
bathwater right you want to make sure
that you don’t you want to make sure
that you
there’s something
if there’s some really good career
changing things taking place you don’t
want to throw that away um with all the
noise so how do you evaluate that
so today we’re going to talk about uh
we’re going to we’re going to talk about
that some more now there are two types
of technical recruiters agency and
corporate i like to divide them into
those two categories some may have other
categories but the agency
technical recruiter and that’s where i
came from the agency side that’s where
um
you hear the term headhunter or you hear
the um you hear or that’s where um
recruiters are paid
um usually a base salary but also
there’s a heavy commission associated
with placing you so there’s a lot of
incentive for recruiters to do a good
job on your behalf
corporate recruiters are the ones that
where that wave the company flag like
they’re calling you from
google amazon twitter and they’re
looking to hire you and there’s some
great corporate recruiters too in fact
many of the best corporate recruiters
actually started out in an agency
environment and they transferred that
skill set
into uh the corporate world so there’s
the difference but we’re going to focus
primarily on agency recruiters tonight
um and we’re going to talk about the
ones that are probably leaving most of
the messages um whether it be text or
voicemail or email for you
and we’re going to talk about five tips
on selecting the best recruiters to work
with
now
here’s something which is it almost
doesn’t sound uh
crazy but how many of you ever ever
asked a colleague for a recruiting
referral
you know we we asked we asked friends
for doctor’s referrals lawyers referrals
accounting referrals but have you ever
um and i use the word devops here so i
didn’t mean to do that but basically um
for a software development colleague
have you asked them for a referral to a
recruiter that maybe placed you in the
past if you’re looking for a new
opportunity rather than the recruiter
finding you
you going to get you getting a referral
from a friend or a colleague is really
really great and i’ll tell you why
because when a when i was a recruiter
the best
thing that could ever happen was getting
a referral from somebody had placed
before and what that means is that a lot
of the biggest complaint about the
technical recruiting industry is if you
see a job on the web that you want to
apply to and you reach out to the
recruiter
a lot of times you never hear back from
them no matter how qualified you are
like your foundation for where these
enterprise cloud patterns build from so
when you think of a model
um
thanks mike um and when
you have a
when you when you get a referral though
to a recruiter you are going to get a
call back and you’re going to be
hopefully treated like gold because when
you’re a referral from a colleague
you’re going to get um the career advice
expertise that you need recruiters are
inundated right now with applications
and i’ll tell you uh 80 of the
applications usually are not qualified
for the job they’re applying for um and
what happens is the recruiter gets
inundated and they sometimes
through all the noise don’t get back to
the best qualified people so when you
get that referral asking a colleague um
is
on on the best recruiter they ever
worked with especially someone that’s
placed you as the good developer that’s
always going to be
probably the first and best route you
want to take
uh
so screen your emails and voicemails now
this is important um you know
this is the very common high this is
bill from abc tech i have your dream job
yada yada yada give me a call back and
you never hear from bill again he’s just
dialing for dollars and
and he’s trying to get in touch with you
that’s a pretty stale generic message
that you’re going to get from most
recruiters in voicemail and in your
email what you want to look for is look
for the recruiter that has spent some
time looking at your profile
and learning more about you
and
a good recruiter will also be able to
look at your background and determine
not what you’re doing right now but what
you probably want to be
if you’re a developer and they have that
architect position open that you’re just
about ready to um advance to they’re
going to be able to look at your
background and say huh this person’s
ready for that i know they’re going to
be interested in it are they spending
time looking at what you probably want
to do and what benefit there is in it
for you
the generic job description email and
voicemail avoid them it’s not a good use
of time chances are the recruiter has no
relationship with the people that they
are
representing if they’re leaving that
kind of uh message for you but if they
look at your profile if they’ve
inspected your github um account to know
what you’re contributing to and if they
clearly spent time to learn about who
you are that’s at least worth a phone
call
of your time to determine whether they
truly do
have something which can be unique um
for your uh career and the good news is
even if it’s not a right match for the
time someone like that is going to be
able to be in touch with you for future
opportunities and they’re going to be a
good career resource for the future
number three
i want you to consider interviewing the
technical recruiter you know isn’t it
great when recruiters call you um i’m
sure that many of you have gotten that
phone call from the recruiter and they
get you on the phone and they start
talking to you like they they ask you
all these personal questions within the
first two minutes hi how much do you
make and all these other questions uh um
and all the other questions associated
with that they just you know they’re
it’s like they’re right on top of every
personal question that they can ask you
about you and your life and you don’t
know anything about them
you should turn the tables and i expand
i always respected that when when
candidates would ask me questions about
my credentials in placing them
so for example a very common and easy
question to answer is how many go
programmers have you placed in the last
two years have they ever placed a go
developer do they know anything about go
um
it doesn’t necessarily if they have
never placed a go developer before you
know that’s okay but how they answer and
feel that question
is going to be really really important
are they talking to somebody that’s true
are you talking to somebody rather
that’s truly engaged with what they’re
doing on a day-to-day basis from a
technology standpoint do they understand
the market do they understand your
career path and desires just by looking
at what you’ve done before and having
some clue or is it just kind of like
you’re talking to somebody that just
doesn’t get it you’ll be able to clearly
know that through these interview
questions
another good question you should ask and
this is really important is how many
placements have you made with the
company you’re calling me about
you know if
is it a new client a new client is fine
but if you’re talking to somebody that
says i’ve placed about 20 people with
this particular hiring manager
you may want to listen because this
recruiter knows what this manager is
looking for so they’re not just
representing a job description they’re
truly representing a career path and
that’s something that should be
considered in their credibility
um does your company have a relationship
with the hiring manager is also a great
question are they just kind of like
getting it from some um vendor
management system and now and then the
recruiters are just dialing for dollars
you probably have gotten those calls
where 10 recruiters call you within five
minutes about the same job that’s
because like a big company like uh
comcast or
at t just released the job through the
system and all the recruiters start
dialing in your keywords so we’re great
for it and they’re all calling you about
the same job well you know it’s one
thing if the value that a recruiting
recruiter from an agency is going to
bring to you is if they actually have a
relationship with the person making the
hiring decision otherwise there’s really
what value is there to you um are they
really truly bringing you an opportunity
that you couldn’t land upon yourself um
if uh if you didn’t see it so it’s
something to consider when you’re asking
um
the recruiter some questions but again
all the questions there’s no right or
wrong answer to these questions it’s how
the recruiter answers the questions to
determine whether they are truly engaged
with what they’re doing and if they can
provide any value to you in your career
so here’s the other thing assess
customer service rating so i like to
think uh i always like to think of the
uh recruiting industry as like the
hospitality industry now
on my left i have like a motel 8 right
um it has a bed it has a television it
probably has some source of food that
you can ask for
um
and uh it has uh you know it has the
basics it has a restroom and so forth
well if you look to your right i think
that’s the uh i think that’s the uh
mistaken um
that’s a five-star hotel it also has a
bed
a television
uh a restroom and uh and certainly a
source of food as well
but how are you being treated in that
conversation is really really important
how you’re being communicated with the
level of customer service you want to
make sure that the person representing
you is doing so in a way that
is worthy of your background and career
this is your this is your um
this is this is your life and this is
something you’re passionate about don’t
just hand it over to anybody that may be
able to just submit you to jobs
as a as a recruiter never always as a
recruiter i never would submit anyone to
a client without their permission and
make sure that anyone that you work with
is going to be very very upfront with
you about who their client is and um
how you’re being represented if they’re
not willing to do that you have you want
nothing to do with that individual that
individual is not a good use of your
time so make sure you’re getting the
five-star service that you deserve and
that your career is worthy of
so
linkedin recommendations so linkedin is
is is a pretty awesome tool linkedin is
uh you know sometimes known by some as a
job board i mean as recruiters all live
in linkedin it’s not the only source
they use by any means but it’s a really
really uh important tool that we all use
um here’s a recommendation that was left
for me by somebody that i’ve placed uh
five times in my career
um and he’s uh he’s is a great
technologist but what i will say is this
is that when you’re talking to a
recruiter check out their linkedin
profile to see if anyone’s ever
recommended them
if they’ve never been recommended by
anybody and they’ve been in the industry
for 10 years that’s a red flag that
means that no client no candidate
um or even somebody that didn’t place
those are always my favorite
recommendations was people that i didn’t
even place that i’ve had 20-year
relationships with they would leave me a
recommendation because of the
consultation time we had together all of
those things are really really important
are you working with somebody that’s
reviewed well and can benefit you
it’s not the number one indicator but it
certainly is some indication whether
it’s a good use of your time to work
with that individual
so that’s five um those are five
things to consider when you get
contacted by a recruiter and try to weed
through all the noise because really
you are in demand from a skill set
standpoint because of the profession you
have chosen that’s awesome there’s a lot
of great things that go along with that
but you do not need to be the victim of
uh not using your time wisely with who
you choose to associate with especially
as it relates to those who are
representing your career so i’m going to
uh stop my share right now and see if
there’s anybody that you have that has
any questions um
about uh
what either anything i spoke about
tonight or shushroot and by the way even
if i didn’t touch on the topic this
evening feel free to ask me as well i’m
happy to be an open book as it relates
to uh the technical recruiting space uh
and so forth anybody
do we have anything in the chat here
uh but my best advice on finding
developer job is to head to twitter
yeah and and you know one of the things
that’s important i think that actually
uh hey that’s this is good advice
the
people that spend time especially at
user groups like this i would say have a
less
need
um especially when you meet people in
person not that virtual is bad but have
less need um than um people who don’t
come to groups like this to because um
for a recruiter because you’re
networking with technologists in your
space so for example if i’m if i’m uh if
i if i’m at a go user group and i am
with nick and i know that nick is an
awesome and i and i know that my
company’s looking for a good developer i
may say you know what i go to the user
group with nick he’s probably somebody
i’d rather talk to about this job i know
him i feel confident in representing him
so there’s a good networking that takes
place so
the best career move even above what
mahey had mentioned even though i think
these are good sources is the networking
that you do within your technology
community period
is number one you all could be binge
watching on netflix right now you may be
doing that while i’m talking that’s fine
too but uh that was but the choice you
made to be part of a community tonight
is different than those who are doing
other things and are not taking the time
to network so kudos to you um in in that
choice but uh thanks for that note but i
do agree that there’s some great uh some
great channels out there and lots of
tools um if you want to take that but
recruiters can be very very valuable
they have relationships that um
are available only between only um
based on what their company has spent
millions of dollars on in that building
that relationship with hiring managers
which can be very very unique
opportunities that uh that individual
may have exclusively so that’s something
to consider as well
any other any questions or thoughts
regarding this tonight
hey uh mihai here
actually you missed the last sentence i
i mentioned that which is finally give a
few talks at meetups which i think
okay great oh and by the way i thought
you’re you’re you’re you’re uh you’re
correct by the way i think what your
point your your points there are awesome
um that you mentioned so thanks for
doing that so uh definitely not
definitely uh in support of what you
said um but uh i i but i love how you
covered at that point as well i mean uh
is it worth it to reach out to corporate
recruiters when applying for jobs or
does it really not affect your
application by ability that’s that’s a
real that’s a really good question um i
would say that corporate recruiters are
really really good at what they do
typically they are working directly with
the hiring manager they know what they
want they know what they don’t want
i would say that um it’s at
it depends it’s hit or miss um i know
that some people have had amazing
experiences with awesome corporate
corporate recruiters um then there’s
others that are so inundated with the
workload that frankly somebody a piece
of the gold can fall right in front of
them and they wouldn’t see it
just because they have so much workload
going on uh typically if you have a
referral within a company that’s always
the best source if you’re targeting a
particular company if you have a past
colleague and so forth
but i would say that
it’s one of those things where if you if
you have your mindset that this is a
company you wanted to join um especially
if that person’s engaging with you on on
linkedin a corporate recruiter is
definitely a good route to go
um however if a
agency recruiter calls you about a job
um if you you that sometimes can be an
advantage because a lot of times the the
hiring managers aren’t necessarily
enthralled with the corporate
recruiter’s response time um and that’s
important so what they do is they
utilize the agencies
to supplement
the overloaded corporate recruiter so a
lot of times the hiring manager is
willing to spend more time with the
agency and be more specific about what
their need is and a good agency
recruiter is going to specifically
target that so if i say
i’ve placed 20 people with this hiring
manager your ear should perk up because
that means
i know what they’re looking for and
there’s a reason for that success so um
that’s a really great question hopefully
that answers your question
if i may cut in there to dovetail on
what it said
uh
it’s so important that people uh look at
their linkedin and look at their cv
and make sure it reflects their actual
level because
when people like let’s say a recruiter
is going to go to a hiring manager and
say hey this this is the person’s cv
will be at that very moment you will be
ranked at a certain level it will be
very hard for you to level up from that
level during the interview rather than
coming in at the appropriate level and
then making sure that people like treat
you as somebody who’s going to be like a
senior or like a principal person or
whatever you know
that’s a that’s a that’s a really good
point i appreciate you pointing that
nick nick here is a corporate recruiter
and and uh nick you can you can come off
mute too i like corporate recruiters a
lot um and uh
but you know i did promote you to
developer in my example though i thought
you should have been pretty impressed by
that but uh
but nick makes a point as a corporate
recruiter myself um you’re reaching um
you know make sure that you’re reaching
out to the right contact if you’re
looking for an internship try to reach
out to the university recruiter not the
executive search recruiter don’t
outsmart yourself as i think what he’s
trying to say a lot of times people
think with technology you can just you
know find your way in through different
routes and a lot of times you can also
hurt yourself at the same time if you’re
ultra aggressive and you don’t let the
systems in place work for you so that’s
that’s important there’s a lot of you
know
um the a lot many recruiting departments
really set the stage for what’s allowed
in terms of the recruiting process
within their organizations and that and
especially if you’re targeting a
particular company you want to make sure
that that those those are respected and
of course sometimes we’re impatient in
the world of microwave ovens we can call
them ovens anymore uh microwaves and and
fast uh and and fast speed for
everything it can be a little bit uh
difficult to be patient especially when
if you truly are looking for a job
aggressively the long
it time passes very very slowly
um
and let’s see here ah and yeah you don’t
want a message definitely want to
message the wrong the wrong recruiter
and if you do so what they’ll refer you
as well obviously you’re showing
interest and that’s something that’s
important but
it’s but doing your research is really
key um
and that’s and i think that’s that’s the
point is and it’s well taken
anybody else anyone have any specific
examples any any any any questions from
experiences they had in in past job
searches that may benefit the rest of
the uh
community here tonight
going once
going twice
okay
oh andy you going to say something
oh i was i guess i was actually i mean i
guess a question that i have is
i mean one of the things that that we go
programmers are experiencing now
is that because of the demand for our
services we’re always working
yes which is good right it means that
you know that the time the the
past times when you’d lose your job and
spend a couple of months
sort of off trying to find a job it
seems like those months are gone now
sure um but i think that that always
that also means
that go developers are looking to move
right
and i guess a question a broad question
that i have is
when do you feel
like in your current position if you’re
interested in moving
thinking about moving
you should start to reach out to
recruiters
participate in this stuff that you’re
talking about and what are gotchas and
caveats to look out for uh when you’re
doing this sure so when i was in so the
last recruiting company i worked for i’m
going to give you an acronym this
acronym hopefully will be helpful for
you i used to call it the tlc4 okay
tlc for and that stood for this uh the
technology that you’re passionate about
the leadership you’re willing to work
under and the four c’s are career path
uh culture
commute
and
compensation
the answer to those six questions are
determining and how each of those items
rank
in your life at a given time
is going to determine whether you’re
going to stay
or whether you’re going to leave
if you’re satisfied in all of those
areas
and your your cr and all of those areas
needs are being met you really are
almost what i would refer to as
unrecruitable and that’s great but if
there’s something for example you find
out that you’re this is a lot of reason
why people leave companies is because of
their boss
if
people don’t leave um
companies they leave bosses i mean
that’s really what it comes down to if
your leadership is bad and you don’t
trust the leadership you’re working
under that is a huge motivating factor
to leave and probably one of the most of
the biggest ones out there if if that’s
weighing heavy on you chances are you’re
gonna that’s when you start looking if
you realize you’re being paid 50 000
under the market
that’s sometimes a big enough trigger um
to make to make a move so what really
all depends your tlc4 and how all of
those rank at a given time is going to
determine whether you should probably do
that or not if you’re busy working if
you’re contributing if you’re getting a
lot of satisfaction
here’s the bottom line if you it can’t
all be about the money in fact it’s not
all about the money because what happens
is is that people make um people are
there’s so many other factors about a
career that are important
and what happens is if your needs are
being met and you’re really enjoying
yourself why rock
why make the change unless it’s just you
know if they’re if they’re if they’re
offering you like uh once in a lifetime
captain kirk uh get on a get on a
spaceship opportunity i mean
you know
there’s maybe no reason to look for that
next opportunity but if one of those
needs aren’t being met that you know
chances are it’s worth exploring for
yourself
does that answer your question
i think it does
okay
if it didn’t by the way i wasted a lot i
just spent a lot of time talking about
it no i i think i think an extension to
that question is
i mean
another consequence of this constant
work cycle that we’re in uh is you know
that we’ll
we’ll be on a two-year
job stint and then you know we might
switch jobs
my personal experience has been that it
takes you takes me a few months of
searching to find a place that is
interact has all of these
characteristics that you just described
as a fraction of two years
three months
it’s actually a pretty big fraction
right i mean you know basically that’s
you know and and my success at that
which hasn’t been spectacular
um indicates to me that maybe i need to
be in contact with recruiters
earlier than i might think maybe i need
to be in kind of contact recruiters all
the time i’m not even sure actually i’m
i’m not i’m not intending to waste
anyone’s time i’m not trying to
represent
that i’m interested in moving when i’m
not
but i guess at the same time i am
interested in sort of when
do you become an as a job seeker when do
you become an active truly active
participant in this relationship
well when you build
i showed you an example of somebody i
placed five times and i have other
examples of people that i’ve placed
three times four times in the course of
20 years as well
one of the things that you want to do is
you want to be that you know when you do
the appropriate screening because you’re
getting reached out too regularly i’m
assuming uh by technical recruiters uh
when um you know or if you make if you
make if you if you if you adjust your
linkedin profile and make it clear that
you’re clear that uh if you beef it up
some with a resume um it’s gonna be
something that’s going to uh
make some bring some noise to you you
just have to be able to weed through
some of that and then when you see and
then get in touch with the people that
stand out to you as who can be of
benefit to you because a good recruiter
is not thinking of a quick hit all the
time those those are the one to two-year
recruiters uh they’re thinking if i
don’t make if i if i don’t play somebody
i’m gonna lose my job and i’m gonna lose
my career that’s what they’re thinking
about but a good but but somebody that’s
well entrenched in in the technology
space
they’re thinking you know i don’t have a
job for andy right now but i know
five other five of my potential clients
here in in the new york metropolitan
area they need somebody like him so
having that relationship in place you’re
going to want to have maybe one to two
uh confidants
that can always have an eye out for you
so you can focus on your development and
they can focus on what they do if you’re
going to utilize a recruiting service if
that’s helpful but it should almost be
like a a regular passive thing but don’t
overdo it otherwise i know people that
are saturated um with too many
recruiters and too many submissions and
when recruiting when companies receive
this a person’s resume they’re like oh
yeah we’ve only seen that resume 20
times in the last 10 years not
interested you want to be really careful
about that
any other questions or uh thoughts on on
these tonight
okay
cool
well i really appreciate everyone coming
out tonight um i really enjoyed uh
sushrut’s talk and uh thanks for uh
putting up with mine and i’d like to
see about let me see here let me stop
the recording