EBoard 07: Brainstorming
Approximate overview
- Administrivia
- Visitor talk(s)
- Visitor practice interview.
- Reflections on practice (or non-practice) behavioral interviews,
if there were any
- Brainstorming strategies (if time)
Administrivia
Visitor Talk
- Welcome to our visitor!
- Sam has permission to take notes. But only if he uses vim.
- Graduated in 2017.
- Took old 151. In the old 151, students scripted the Gimp (an open-source
version of photoshop).
- Built a DormsDB program. “A Yelp for dorms.”
- No, PHP is not a good language.
- JavaScript and MySQL are pretty good things to learn.
- Was part of AppDev, an organization that built applications for campus.
Menu, other stuff.
- Did some other stuff.
- Summer research: a functional language for building images.
- Learned Full Stack development and Node.js
- Like many alums, has trouble remembering some things.
- Managed to get an internship at Google because they knew how to parse
a Scheme-like language and how to compute from that. (Magic of getting
a question on just that topic.)
- Worked on a single-sign-on app, just like DUO.
- Did Grinnell in London, with an internship.
- Like many alums, has trouble remembering some things.
- Another internship, this time at Nest.
- Followed SO to LA, got a position at Amazon Studios. Learned React.
- Amazon is everything they say. Read this as you may.
- Recruited to Riot Games.
- Built a game server deployment tool (e.g., deploy with Kubernetes
or Docker).
- Got PIPped. It’s on your permanent record.
- Joined high-touch consulting company in 2019. The benefit of knowing
people. 0260 (it’s almost a zip code).
- Returned to Iowa in Fall of 2019. Lots of different kinds of consulting.
Modernization: Cloud and serverless technology.
- The danger of consulting: Clients sometimes stop paying. If you don’t
have enough clients, you’re screwed.
- It is still a rough tech time.
More on the consulting company
- There were lots of doors (and windows?) that opened.
- How do you choose which to do? Analysis paralysis.
- If you are going into business for yourself, you need to understand
business (or you have to work with someone who really understands
business).
- Understand the value of what you’re doing; something you can.
AppDev
- A student group on campus that built iOS and Chrome apps.
- Deep organizational infrastructure.
Things recommended:
- Work on projects for yourself.
- You end up touching every part for yourself.
- Searching for data can be interesting. At least if you’re
that kind of person. Figure out where the hurt is.
- Learn MySQL.
- Learn JavaScript, Learn Node.js, Learn React.
- Learn about the organizational culture of the place that’s hiring you.
- Figure out what matters to you.
- Learn how to suck up to faculty while faculty are in the room.
- Watch Silicon Valley on TV. It’s more realistic than you’d think.
Can help to understand how companies are organized and their
value proposition.
What was the interview process like?
- Once you get an internship at one of the big companies, people treat you
differently.
- Most internships are designed as “path to job”.
How do you find customers?
How do you determine the tech needs of random clients?
- It was often data analysis as a starting point.
- The other co-founder had built a data analysis tool.
- Tried to democratize the tool (more clients, lighter touch).
- Timing issue: Generative AI threw a fork into the plan.
- “It’s all fancy stats, but no one understands the stats.”
- “You should post THIS TYPE OF CONTENT at THIS TIME because THIS REASON.”
Mock interview
Write a function that takes a string, s, and an integer, k, that produces
all the strings of length k that contains only characters from s.
Questions
- Is “aa” part of the result if the input is
fun("abc", 2)?
- Interviewer says “yes”, Sam says “no”.
- Can I return an array of strings?
- Interviewer says “yes”, Sam says “I’d assume you could come up with
something better than that.”
Ideation
- Since it doesn’t matter how many times a letter appears in the string
we’ll set up an array that keeps track of which letters appear.
- Or maybe a set (hashset?).
- It may be helpful to write a helper function.
Time complexity?
Space complexity?
Reflections
- Some good early questions to set the stage. [+1]
- Moved to code fairly early. Are there better ways to talk through your
ideas?
Reflections on Behavioral Interviews
Brainstorming Strategies
If there’s time.