Get ready to learn! Bloomberg learning labs are a collection of activities designed to help candidates learn more about particular technologies, financial domain concepts and display how we can use computer science knowledge to solve problems in this domain.
Here at Bloomberg, we wanted to give individual a better insight into what software engineering looks like and how we build our software solutions. This repo contains a series of labs which will walk through & engage developers to create solutions to problems we face at Bloomberg! Through these labs you can learn more about our problem domain and continue to develop your coding skills.
This lab follows a framework of learning items. Each learning item should have a goal/objective for the developer to complete. Objective items can build off each other allowing the developer to use their previous code in new problem sets. Each learning item item has set of engineering provided data and developer provided solutions
- Problem Background/Jupyter Notebook
- Data Source
- Solution Interface
- Tests
The lab will include a Jupyter notebook which gives the developers context & a background into the problem. Additionally, in each of the notebooks there is a section to allow developers to write their solutions.
Each lab will be setup to provide generators for any required data. This is all mock data so feel free to update it as you see fit while working through the lab.
For expected solutions, the lab will provide developers with an interface. The methods of this interface are what will be used in tests & are expected of the classes that you create.
Every piece of code needs a good test! To help validate that what you've developed matches requirements we've included test files. They focus on the expected use cases of a class, but can always be expanded if you'd like to increase your coverage.
We ❤️ contributions.
Have you had a good experience with this project? Why not share some love and contribute code, or just let us know about any issues you had with it?
We welcome issue reports here; be sure to choose the proper issue template for your issue, so that we can be sure you're providing the necessary information.
Before sending a Pull Request, please make sure you read our Contribution Guidelines.
Please read the LICENSE file.
This project has adopted a Code of Conduct. If you have any concerns about the Code, or behavior which you have experienced in the project, please contact us at opensource@bloomberg.net.
If you believe you have identified a security vulnerability in this project, please send email to the project team at opensource@bloomberg.net, detailing the suspected issue and any methods you've found to reproduce it.
Please do NOT open an issue in the GitHub repository, as we'd prefer to keep vulnerability reports private until we've had an opportunity to review and address them.