maxwildersmith / evaluation

Template repo for the software members evaluation

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Incoming Software Engineer Evaluation

In this repo are a series of coding questions and three quick programming exercises to evaluate where to best place you. Pull this repo and change the upstream branch from the MoonFall one to a personal public repository. A guide on how to do that can be found here. Please fill out the info section on this page, the complete the quick answer questions below.

There are also 3 programming challenges written in python 3. If you do not know python you can answer in detailed pseudocode or c++. Detailed descriptions for the tasks are in their folders README files.

When you are finished, push the code to your own repo and send the link to maxwildersmith@gmail.com.


Info

Name:

Email:

Project you are applying for:


Quick Answer Questions

For the following questions answer as best you can, if you do not know, either make your best guess or skip the question. These questions are designed to cover all the potential roles for a project so it is not expected to know the answer to all of them. For the short answer ones answer is one or two sentences.

Sample:

Which of these is the number 5?

  • 1
  • 0
  • 5
  • 4

What is one difference between a float and an int?

An int is a whole integer number while a float can be a decimal value.

Questions:


General

What does an activity diagram show?

Which of these languages offers the lowest level of control and fastest execution?

  • Python
  • C#
  • Java
  • C

What is the purpose of version control systems (VCS) such as Git or Mercurial?


Embedded Systems

Which level of cache would be accessible by only a single core on a multi-core chip?

  • L1
  • L2
  • L3
  • All levels

Explain one difference between any of these 2 protocols: I2C, SPI, UART:

What is a feature Java has that C++ does not?

  • Object oriented classes
  • Lambda expressions
  • Data streams
  • Implicit garbage collection

Name one major concern when developing for embedded systems and edge computing such as a deployed Jetson or Raspberry Pi:

Which of the following is a job for the DHCP server?

  • Route packets out to the internet
  • Make particular ports available for access on the inter/intranet
  • Assign IP addresses on the network
  • Look up what domain name maps to an address on the internet

Linux

What does the permission code 777 represent (as used in chmod 777)?

Which of these commands sets and environment variable in Linux?

  • export VAR=val
  • export $VAR=val
  • echo VAR=val
  • echo $VAR=val

What is one major role of systemd?


AI

Which of these network architectures would be best suited for processing text?

  • Convolution Neural Network
  • Recurrent Neural Network
  • Multilayer Perceptron
  • U-Net

What is one solution to the vanishing gradient problem in backprop?

What is the traditional flow of interactions for a reinforcement learning agent?

  • Read the current state, take an action, environment updates state
  • Make a prediction, evaluate the loss from a target, update model with backprop
  • Generate result, compare result to similar objects of the class, improve discriminator and predictor

Briefly describe either branch and bound or dynamic programming:

What is the main challenge with implementing A*:

  • Picking the correct heuristic
  • Initialization parameters
  • Solution will not converge
  • Too long of an execution compared to other common pathfinders

About

Template repo for the software members evaluation


Languages

Language:Python 100.0%