Skip to content

Instantly share code, notes, and snippets.

@aziobrow
aziobrow / Alphasights_technical_challenge.md
Created April 10, 2019 17:53 — forked from tadast/Alphasights_technical_challenge.md
A technical challenge we give to our Ruby on Rails applicants in order to evaluate their coding proficiency. Job description: http://www.alphasights.com/positions/ruby-developer-london or http://www.alphasights.com/positions/ruby-developer-new-york

Alphasights Technical Challenge

Using Ruby on Rails we would like you to create a simple expert search tool. The application should fulfill the requirements below. The source code must be placed in a public repo on GitHub. The application should be deployable on Heroku.

  • I enter a name and a personal website address and a member is created.
  • When a member is created, all the heading (h1-h3) values are pulled in from the website to that members profile.
  • The website url is shortened (e.g. using http://goo.gl)
  • After the member has been added, I can define their friendships with other existing members. Friendships are bi-directional i.e. If David is a friend of Oliver, Oliver is always a friend of David as well.
  • The interface should list all members with their name, short url and the number of friends e.g. Alan http://goo.gl/3io1P (3)
@aziobrow
aziobrow / gist:cd7e8bdf1c2a6316244921ef9ad88db2
Created December 21, 2017 04:43
Personal Project Proposal
### [Project Title]
### Pitch
App built for the University of Denver Cognitive Lab, allowing scientists to CRUD/search/visualize data for mice involved in lab experimentation.
### Problem
Currently, the scientists in this lab use multiple large CSV files to collect and organize lab mouse data. They've expressed interest in having an application built that would allow them to access the data in a more user-friendly and accessible manner.
I was an educator for 10 years--first through Teach for America, and then as an instructional specialist and an assistant principal. My interest in software development was piqued when I was still a teacher. I taught math (ranging from grades 4-8), and there is such an overwhelmingly broad range of abilities in a math class, which only widens as students get older. There are sometimes students on a 2nd grade level in the same class as a student on a 10th grade level, and that can be hard to manage as a teacher. I wished my students had access to an adaptive learning program that would target their grade-level abilities exactly where they were, and then I wished that I had the capacity to build such a program myself--since I, as a teacher, knew exactly what it should look like. From there, I started dabbling in online courses and checking out options for learning development at school, but never completely seriously.
At the same time, I started becoming increasingly disillusioned with the education s
As we've discussed, meeting people, forming relationships, and having conversations are the key pieces to getting your foot in the door at any company. It's important to be proactive in your approach to outreach and networking, so it's necessary to make a plan for what you'll try in Module 3.
Meetups/Networking Events: Identify 1 meetup and/or other networking event that you'll attend between now and the end of Module 3. Answer these questions:
Why will you attend this particular event? I'd like to attend the Denver.rb meetup on November 14th--it's a direct link to the Denver Ruby community, and although I'm of course open to other technologies, I'm interested in connecting with people from the Ruby community specifically. It's also during break, which means I can be fully invested in my time there! It's also at Ibotta, which I've heard good things about, so I'd be interested in touching base with developers who work there.
Who do you hope to connect with at this event? Turing alum would be great, but c
Date of feedback conversation: 10/12/2017
How did you prepare for the conversation? I looked at the Nonviolent Communication Protocol that we discussed in our last feedback session and used it as a sort of template to prepare notes for the conversation. I thought about the four components, which include observations, feelings, needs, and requests. I only had two partners, so it was a meaningful way to think about our dynamic both as a group and between pairs.
How did the conversation go for you? What was easy about the conversation? What was more difficult? I actually enjoyed the conversation--this was a good project to get to practice this, because overall, the project went well and I appreciated our group dynamic very much, but there were also points of tension that factored in at times that it was good to be able to address. The conversation was made easier by the fact that we had a positive relationship, and I felt comfortable with both of my groupmates. I also had a lot of positive things to say,
* How you've used agile as a process at Turing and what kind of project management tools you utilized. Address these questions:
* What were you already doing?
* What did you put into place in Module Two?
* What was effective?
* What do you want to improve on in future projects?
* Description of the role you played in your pair/group projects this module -- what was your role as a teammate? How did you utilize your strengths and leadership skills?
I think a lot of Turing uses agile--for example, cohort retros is an agile thing. Also, on projects, we have checkins with our instructors partway through--two, if it's a longer project. Projects themselves are kind of sprints--a relatively short amount of time to build out a certain amount of functionality. Personally, I use the ideas of Agile in my own workflow---the idea of red/green/refactor, which is to build some functionality, get feedback, and then revise the functionality as you go. And I try to work in mini-sprints, where I set tim
@aziobrow
aziobrow / gist:4ad9122ba31d52b1269094ef41eea620
Created October 30, 2017 19:34
Setting Group Expectations-Little Shop
Setting Group Expectations
Group Member Names: Josi McClellan, Anna Lewis, and Aurora Ziobrowski
When are group members available to work together? What hours can each group member work individually? Are there any personal time commitments that need to be discussed?
-Josi needs to leave by 7 at absolute latest, and usually isn't available on weekends (unless a group member can pick up). Josi is busy Friday!
-Aurora is available all the time. Anna is also widely available at this point.
How will group members communicate? How often will communication happen, and how will open lines of communication be maintained?
-Slack, in person, Waffle.io, pull requests (be sure to link PRs with waffle for workflow management)
@aziobrow
aziobrow / gist:5f64e7488c77ba3478f6ab394ee5f95d
Created October 30, 2017 06:44
Tech Blog Outline-Containerization and Container Clusters
Containerization
-shared operating systems, so more efficient at using system resources, saves power and hardware costs (e.g., a laptop is easily capable of running multiple containers, but running multiple VMs is significantly more taxing)
-allows servers to run multiple copies of the same app
-good for app portability--can set up local dev environments that mimic live servers, run multiple dev environments with the same host but different software, operating systems, and configurations, test projects on different servers, allow people to work on same project with exact same settings.
tl;dr: It's a portable and consistent format for running apps on different hosts, by utilizing a container that provides a uniform experience
Container Clusters
-Containers can be managed via cluster management systems such as Kubernetes or DockerSwarm
-Allows for management on the service level by scaling and self-healing

Setting Group Expectations

Group Member Names: Marshall Houston, Randy Springer, Aurora Ziobrowski

  1. When are group members available to work together? What hours can each group member work individually? Are there any personal time commitments that need to be discussed? Prefer to go home by 6, 6:30. Specific time constraints may arise, which group will discuss as needed.

  2. How will group members communicate? How often will communication happen, and how will open lines of communication be maintained? Slack. We prefer to work in person as much as is possible to maintain open communication.

  3. Which feature(s) does each group member want to work on? Which feature(s) does each group member not want to work on? Randy prefers not to work on views. Aurora and Marshall would like to be a part of each aspect to gain exposure to different content.

@aziobrow
aziobrow / gist:53797a30f074d7c075a55b2f62195fe7
Created September 17, 2017 16:32
Strengths and StoryTelling Reflection
Build on your professional story by thinking about how you're progressing at Turing. Answer the questions below in your own gist to use your StrengthsFinder themes to add to your story:
Write 1-2 paragraphs about your StrengthsFinder themes: How have you seen yourself using these strengths at Turing? Has your understanding of these strengths changed since you first reflected on them? If so, how?
A number of my strengths are centered around problem solving--I use those strengths virtually all day, every day. I'm not sure that my understanding of this category of strengths has changed, but the ways in which I apply them has been different than I had initially expected. For example, I thought that the problem-solving strengths would be useful in the sense that I had the impression that coding was mostly about figuring out the logic to get your code to do something. That's true, to some extent--some of programming is deciding what you need to have at the end, and then figuring out what you need do to get th