Dear Perspective New Relic Employee / SEC Investigator /
Interested Party,
Please read the following account of my “interview” process.
If nothing else, it’s worth a laugh because even though I
have seen some truly reprehensible behavior from third-party agencies and the
cult of big consulting, this is the first time I have seen anything so
ridiculous directly from a hiring company. Especially a Sili-Valley
sweetheart.
After an intro call with the recruiter, I was sent a “technical” screen. Fine – if by technical New Relic means to check my ability to copy and paste into a command line. But then, to continue following the copy/paste directives, one needs to put down a credit card! Oopsie! Or is it? Can I really ring up enough business in this way with supposedly a free account to make it worth New Relic’s while? I know their product is expensive but faking a job opening to get people to sign up for whatever few bucks New Relic can steal from them this way? I don’t see it. Could it be something more nefarious? Get thousands of job applicants to sign up and thus swell what will look like a much larger installed customer-base?
For the moment, I am going to choose to assume that my seeing the worst in every situation is in full effect. The simplest explanation for New Relic’s behavior is that it’s neither nefarious nor malicious but more likely the result of cluelessness from self-confessed, non-technical recruiters. Still – it falls under bad behavior and bad behavior folks, always, ALWAYS has bad consequences. I am redacting names in hopes that the people involved are victims too. Still...I’d watch New Relic’s stock price for a while. Be ready to sell short.
*UPDATE: after the duress-driven sign-up, I proceeded to receive 4 follow-ups in 2 days. They didn’t even have a way for me to unsubscribe. So…to the ABUSE desk it went with CC to their mailing provider and upstream host. Worked like a charm.
We pick up after my initial call with the recruiter:
From: [redacted]
Sent: Tuesday, March 20, 2018 12:35
Subject: Good chatting- next steps
Good chatting with you.
As I stated in our conversation, we will be scheduling a interview for a 45 phone call with [redacted], [redacted] for the Technical Sales, Chicago
Role.
Please send over your avail
for later this week and early next week. My coordinator [redacted] will be in
touch to get the meeting on the calendar.
Things
to prep for the interview:
Please see
attached for the technical assessment we spoke about, I request this gets back
to us in 48 hours, this will help immensely in your
conversations with the hiring team.
Read
this:
APM
Gartner Report 2017: https://www.gartner.com/doc/reprints?id=1-3M8KIVD&ct=161118&st=sb
Watch
these things:
New
Relic Product Demos: https://www.youtube.com/user/NewRelicInc
Let's debrief
after the call with [redacted].
New Relic Technical Test
Ultimately, take the data generated through this exercise and
present back to this audience as if you were
presenting
to an technically-proficient executive. Tell a story of why this matters!
Include screenshots or
additional
media as needed to best augment your story.
Background
This test is intended to show you a little about how New Relic
works with one common application
stack
that our customers use.
Heroku
is a PaaS (Platform as a Service) that is popular
amongst DevOps types for being easy to
push
out and scale up modern apps on. From Wikipedia:
Heroku
is a cloud Platform-as-a-Service (PaaS) supporting
several programming languages.
Heroku
was acquired by Salesforce.com in 2010. Heroku, one of the
first cloud platforms, has
been
in development since June 2007, when it supported only the Ruby programming
language,
but has since
added support for Java, Node.js, Scala, Clojure, Python, PHP and Go. The base
operating
system is Debian or, in the newest stack, the Debian-based Ubuntu
Heroku
and New Relic
There are several ways to use New Relic with Heroku:
• Enable it through the Heroku UI
to see basic app metrics alongside other Heroku-specific
•
management information
•
See background at https://elements.heroku.com/addons/newrelic and setup details
•
at New Relic APM Heroku add-on
•
Push a New Relic-monitored app to Heroku and use New Relic the usual way
Getting New Relic running in a Heroku
app
Follow the step-by-step process below.
•
Sign up for a New Relic account.
There is a free trial available.
•
Sign up for a Heroku
account. There is a free tier.
•
Follow the getting started tutorial (other language tutorials exist), specifically:
•
Install the tools (you will need
Node.js and git as well):
•
(On a Mac) brew install heroku-toolbelt (NOTE this differs from
·
the tutorial which asks you to
download and install a package ... homebrew
is
·
better)
•
(On Windows) Download and install the
executable heroku-toolbelt
•
In a terminal or command prompt:
•
heroku login
•
git
clone https://github.com/heroku/node-js-gettingstarted.
·
git
•
cd node-js-getting-started
•
heroku create
•
git push heroku master
•
heroku ps:scale web=1
•
heroku open
•
heroku logs --tail (and then CTRL-C once you've seen this work)
•
heroku ps (confirm the process is
running)
•
heroku ps:scale web=0
•
refresh in browser: confirm nothing
running
•
heroku ps:scale web=1
•
Go to the Heroku
Dashboard and click on your app
•
Note there are no add-ons at the
bottom of the page
•
Add New Relic to the Heroku app:
•
heroku addons:create newrelic:wayne
•
heroku config:set
NEW_RELIC_APP_NAME='My Awesome Heroku Node
·
App'
•
heroku config:set
NEW_RELIC_NO_CONFIG_FILE='true'
•
heroku config (you should see New
Relic app name, license key, and log setting)
•
npm install newrelic --save
•
Edit the index.js and add require('newrelic'); as the first line
•
git
add . && git commit -m "Add New
Relic"
•
git push heroku master && heroku logs --tail
•
Refresh your app in the browser
window a couple of times to generate some load
•
Reload the dashboard and note the New
Relic APM :: Newrelic item under Add-ons
·
(You may not see this if you didn't
verify your credit card details)
•
Click on New Relic APM
:: Newrelic.
·
(You may not see this if you didn't verify
your credit card details)
•
The first time you will be asked to
approve some T&C.
•
You may also see a splash page /
screenshot and a " in the top-left; reload the page to
·
see the APM applications list. This is most likely a bug.
·
Deploying a New Relic app to Heroku
It is possible (and easy) to add an existing app (e.g. a Node app)
to Heroku, and to add New Relic
monitoring
to it. The benefit of this is that you can leverage an existing New Relic
account (and
collect
all your app data in one place). See https://github.com/savs/heroku_node_helloworld
for an
example
with basic instructions.
Essentially:
•
Create an app as normal
•
Do 'npm
install'
•
Add New Relic to it as usual:
•
npm install -save newrelic
•
cp node_modules/newrelic.js .
•
Amend the newrelic.js to get license
key from the environment
•
(license_key:
process.env.NEW_RELIC_LICENSE_KEY)
•
heroku login
•
heroku create
•
Save your license key into the heroku environment: heroku config:set
•
NEW_RELIC_LICENSE_KEY=YOUR_LICENSE_KEY_HERE
•
Test locally:
NEW_RELIC_LICENSE_KEY=YOUR_LICENSE_KEY_HERE heroku
local
•
web
•
Go live:
•
git
add . && git commit -m "Useful message
here" && git push
•
heroku master
•
heroku ps:scale web=1
•
Follow up questions:
Now that you have seen New Relic working with Heroku
and a Node.js application, please answer
these
questions:
•
How can you generate some traffic to
your application to test it?
•
What can you find out about your
application in New Relic?
•
What worked in the instructions
above? What didn’t work? What would you have done differently?
•
After installing the APM portion of
our platform. What are other types of telemetry related to an
•
application that you think an executive, developer, operator, or SRE
should ideally have access to?
• What products or components in the New Relic Platform would provide that telemetry?
Sent: Tuesday, March 20, 2018 17:47
Subject: RE: Good chatting- next steps
[redacted] + Team,
As
instructed, I have d/led the doc and am going through it.
So
far the only official mistake is:
The
correct link is: https://github.com/heroku/node-js-getting-started
(dash b/w “getting” and “started”
The
next one, however, might be slightly more an obstacle:
For
it results in:
Unless
you have another suggestion, I could proceed by generating a temp credit card
number…
Please
let me know.
From: [redacted]
Sent: Tuesday, March 20, 2018 23:53
Subject: Re: Good chatting- next steps
Yes you are correct Heroku does
require a CC # in order to access their systems. I would suggest trying
possibly the .NET agent if you have an enviroment that
may suit that agent or possibly looking at the browser product. Any question
from a technical perspective could be answered if you go to the NR Community page
Sent: Wednesday, March 21, 2018 03:11
To: [redacted]
Subject: RE: Good chatting- next steps
Thanks [redacted], in the meanwhile, I am available:
Today before 2PM
Tomorrow after 4PM
Friday anytime except 10AM – 1PM
Next week, I cannot do anything on Wed the 28th
but any other day I can juggle at your/[redacted]
convenience.
Thanks!
From: [redacted]
Sent: Wednesday, March 21, 2018 08:20
Subject: Re: Good chatting- next steps
Let's get through the assessment, and we'll get you in front
of James shortly after.
Thanks!
Sent: Wednesday, March 21, 2018 08:19
To: [redacted]
Subject: RE: Good chatting- next steps
Thanks but still not following where/how you want me to
deploy.
From: [redacted]
Sent: Wednesday, March 21, 2018 08:28
Subject: Re: Good chatting- next steps
I am sorry, can you further clarify your question? Have you
looked at New Relics community page? I believe and again I am not a technical
person, but I think the assessment is asking you to install the Node.JS agent
into an environment for the APM product.
And we are suggesting Heroku as
the enviroment to do so. If you are not comfortable
using Heroku, and I know you stated that C# was your
language that you are most comfortable with, I suggest that you go with the
.NET agent and install that in an enviroment you
already have up and running.
I also suggest looking into our Browser product if neither
options above are right for you, you are able to use the browser agent to run a
similar exercise for website data.
Hope that helps, any other insight I suggest going to NR
community, as well as NR university and Youtube.
Cheers,
Sent: Wednesday, March 21, 2018 08:36
To: [redacted]
Subject: RE: Good chatting- next steps
Thanks [redacted].
Here’s the deal: I am perfectly comfortable copying and
pasting a bunch of code into a command line as that is what your “technical”
assessment has been up until this point. The part with which I am NOT
comfortable is paying for the privilege of doing so as is required by EVERY
cloud vendor including Azure and AWS when incorporating pay-to-play components
such as New Relic (not node.js). The language of my “comfort” is irrelevant.
The infrastructure I spin up, however, is very relevant.
Anyway…
If you want to provide a sandbox, like, oh…every other
company I’ve ever dealt with, please feel free and send the account info/links.
If not, best of luck.
From: [redacted]
Sent: Wednesday, March 21, 2018 08:42
Subject: Re: Good chatting- next steps
Sorry this is the assessment that is used for all the folks
we have hired for the group. If you are not comfortable moving forward, I
completely understand, I also wish you the best of luck.
*
Mealschpeal; http://www.mealschpeal.com