Nbyula interview question

1. What is a middleware? 2. How would you implement a Vector/List by yourself?