Software Engineering
- 200h Duration
Selamat datang di kursus Software Engineering di Adikara Academy! Kursus ini dirancang untuk membekali Anda dengan pengetahuan dan keterampilan mendalam dalam pengembangan perangkat lunak, mulai dari konsep dasar hingga praktik terbaik yang digunakan di industri saat ini. Melalui kurikulum yang komprehensif, Anda akan mempelajari berbagai aspek penting dalam rekayasa perangkat lunak, termasuk desain, pengembangan, pengujian, manajemen proyek, dan dokumentasi.
Apa yang akan Anda pelajari?
Software Design
- Object-Oriented Programming (OOP): Memahami prinsip-prinsip OOP seperti encapsulation, inheritance, dan polymorphism.
- Design Patterns: Mempelajari pola desain populer seperti MVC (Model-View-Controller) dan Singleton.
- UML (Unified Modeling Language): Menggunakan diagram UML untuk memvisualisasikan dan merancang sistem perangkat lunak.
Version Control
- Git & GitHub/GitLab: Menguasai penggunaan Git untuk manajemen kode, termasuk branching, merging, dan kolaborasi tim.
- Best Practices: Memahami workflow seperti Git Flow dan cara berkolaborasi secara efektif dalam tim pengembangan.
Testing & Quality Assurance (QA)
- Unit Testing: Menggunakan framework seperti Jest (JavaScript) dan PyTest (Python) untuk menulis tes unit.
- TDD/BDD: Memahami Test-Driven Development (TDD) dan Behavior-Driven Development (BDD) untuk membangun aplikasi yang andal.
- Selenium: Mengotomatisasi pengujian UI dengan Selenium untuk memastikan kualitas aplikasi.
Metodologi Pengembangan
- Agile: Memahami prinsip-prinsip Agile dan bagaimana menerapkannya dalam pengembangan perangkat lunak.
- Scrum & Kanban: Mempelajari framework Scrum dan Kanban untuk manajemen proyek yang efisien.
Arsitektur Perangkat Lunak
- Microservices vs Monolith: Memahami perbedaan antara arsitektur microservices dan monolith, serta kapan menggunakannya.
- Modular Design: Mempelajari keuntungan desain modular dalam pengembangan aplikasi.
- Clean Architecture: Mengimplementasikan prinsip Clean Architecture untuk membangun sistem yang scalable dan maintainable.
Documentation
- Swagger: Membuat dokumentasi API yang interaktif dengan Swagger.
- Technical Writing: Mempelajari teknik penulisan teknis yang efektif untuk dokumentasi proyek.
Tujuan Kursus
Setelah menyelesaikan kursus ini, Anda akan:
- Memiliki pemahaman mendalam tentang prinsip-prinsip rekayasa perangkat lunak.
- Mampu merancang, mengembangkan, dan menguji aplikasi dengan pendekatan terstruktur.
- Terampil dalam menggunakan alat-alat modern seperti Git, Selenium, dan Swagger.
- Siap bekerja dalam tim pengembangan yang menggunakan metodologi Agile.
- Mampu membuat dokumentasi teknis yang jelas dan efektif.
Untuk Siapa Kursus Ini?
Kursus ini cocok untuk:
- Pemula yang ingin memulai karir di bidang software engineering.
- Developer yang ingin memperdalam pengetahuan tentang best practices dalam pengembangan perangkat lunak.
- Profesional IT yang ingin memahami metodologi Agile dan arsitektur modern.
- Siapa pun yang tertarik untuk mempelajari cara membangun aplikasi yang scalable dan maintainable.
Bergabunglah dengan kursus Software Engineering di Adikara Academy dan mulailah perjalanan Anda untuk menjadi seorang software engineer yang kompeten dan siap menghadapi tantangan industri!
Want to submit a review? Login and enrolled
This course includes
Software Design: OOP, Design Patterns (MVC, Singleton), UML.
Version Control: Git & GitHub/GitLab (Branching, Collaboration).
Testing & QA: Unit Testing (Jest, PyTest), TDD/BDD, Selenium.
Metodologi: Agile, Scrum, Kanban.
Arsitektur: Microservices, Monolith vs Modular, Clean Architecture.
Documentation: Swagger, Technical Writing.
