An open API service indexing awesome lists of open source software.

https://github.com/mrshaw01/software-engineer

A curated learning repository focused on High-Performance Computing (HPC) — covering fundamentals to advanced topics in CUDA, MPI, C++, and Python-C++ interoperability.
https://github.com/mrshaw01/software-engineer

cpp cuda high-performance-computing hip python

Last synced: 3 months ago
JSON representation

A curated learning repository focused on High-Performance Computing (HPC) — covering fundamentals to advanced topics in CUDA, MPI, C++, and Python-C++ interoperability.

Awesome Lists containing this project

README

          


Software Engineer



pre-commit status


Last Commit
Issues
Pull Requests


A curated, high-quality collection of learning resources focused on **Python** and soon **C/C++**, designed to build strong software engineering foundations and system-level understanding.

## Repository Structure

```text
.
├── python-basic/ # Essential Python syntax, data types, and operations
├── python-advanced/ # Decorators, threading, logging, JSON, and more
├── python-OOP/ # Deep dive into Python's object-oriented programming
├── cpp-basic/ # Fundamentals of C++: syntax, memory, pointers, etc.
├── cpp-advanced/ # Advanced C++: RAII, noexcept, smart pointers, RVO, etc.
├── cpp-OOP/ # Object-oriented programming in C++
├── CUDA/ # GPU programming with CUDA (host & device code)
├── MPI/ # Message Passing Interface programming and demos
├── docs/ # System-level notes on performance, Python-C++ interop, mixed precision, etc.
└── README.md # Project overview (this file)
```

## How to Use

Each numbered folder contains a `README.md` explaining the concepts, along with runnable `.py` files. For example:

```bash
cd python-advanced/08-decorators
python basic_function_decorator.py
```

Some scripts require third-party libraries (e.g., `numpy`, `scipy`, `torch`).

All code is compatible with **Python 3.7+** and written to be **minimal, focused, and testable**.

## Highlights

### Python

- **OOP Mastery**: Classes, inheritance, metaclasses, descriptors (`python-OOP/`)
- **Advanced Topics**: Decorators, context managers, function caching, concurrency
- **Data Structures**: Lists, tuples, dicts, sets with practical usage

### C++

- **C++ Basics**: Syntax, functions, pointers, structs, scope, enums (`cpp-basic/`)
- **Modern C++**: RAII, smart pointers, move semantics, alignment, RVO (`cpp-advanced/`)
- **C++ OOP**: Classes, access specifiers, inheritance, polymorphism, templates

### Systems & Performance

- **CUDA Programming**: Host/device model, kernel launch, memory management (`CUDA/`)
- **MPI Programming**: Practical distributed programs, matrix ops, and validation runs (`MPI/`)
- **Docs**: Python-C++ interfacing, GIL handling, CUDA tuning, mixed precision training (`docs/`)

## Learning Philosophy

- Small, modular examples — no cluttered notebooks
- Clear separation between concept, code, and commentary
- Emphasis on design, performance, and maintainability
- Builds knowledge progressively — ideal for serious learners and professionals

## Star History





Star History Chart

## 🤝 Contributions

Found a bug, typo, or want to extend something? Open a PR — all contributions are welcome.





## 📄 License

MIT License — free to use, adapt, and share for learning and teaching.