Course: CSCI 1510

Skill Tree Map

Transclude of Career-Exploration-Map.canvas

Mission Log

Backend development is a very vast field, and it includes various technologies, ranging from database management, to programming languages, and API development. Iā€™m not entirely certain that I would want to be a backend developer, but Iā€™m excited to learn more about how backend development works, and how itā€™s the ā€œbackboneā€ of software systems.

My mind map covered a variety of topics, but itā€™s not inclusive of everything that youā€™d need to learn. Since technology changes almost daily, this map by default will be missing things that might be more ā€œmodern.ā€ I tried to focus on the most popular technologies, with each topic being pretty vague so it allows for more skills under each topic.

The roadmap has essential topics, such as version control, testing strategies, version control, and containerization (with Docker). Personally, I have a few of the skills ā€œunlockedā€, specifically with the programming languages; I already know Python, TypeScript (Node.js), and Go for the most part. Additionally, Iā€™ve done a bit of API developmentā€”particularly with TypeScript and RESTful APIs. Iā€™ve never experimented with GraphQL, but it seems nice for API development, mainly since itā€™s type safe.

With server management, I havenā€™t done too much. Iā€™ve used Linux, particularly Arch as a personal setup, but I havenā€™t done too much with Docker, or CI/CD. Iā€™ve also never experimented with Kubernetes, and frankly, Iā€™m a little scared of Kubernetes. Iā€™m in a similar situation with security, I havenā€™t done too much in that field. Iā€™ve looked into encryption and OAuth 2.0ā€”mainly working on websites where you can login with Spotify, for example.

Testing and debugging is a pretty broad field. Iā€™ve always tested my code with just running and trying it outā€”this is called integration testing. However, Iā€™ve never actually programmed unit tests; I think theyā€™re beneficial but I havenā€™t personally seen a good use case for them. Overall, backend development is an exciting and I want to learn more about how it works.