सॉफ़्टवेयर इंजीनियर कैसे बनें
वह बुनियादी रास्ता जिससे बैकएंड, फ़्रंटएंड, फ़ुल-स्टैक और प्लेटफ़ॉर्म करियर की शाखाएँ निकलती हैं। कोड, सिस्टम और प्रोडक्ट को लॉन्च करने की गहरी नींव।
1. प्रोग्रामिंग की बुनियादी बातें
मुख्यएक मुख्य भाषा, गहराई से
कोई एक भाषा चुनें — Python, TypeScript, Go, Java या C# — और सिंटैक्स से आगे बढ़ें। उसका मेमोरी मॉडल, कॉन्करेंसी मॉडल और एरर हैंडलिंग समझें।
- ट्यूटोरियल मुफ़्त Go by Example →
- डॉक्स मुफ़्त TypeScript Handbook →
- डॉक्स मुफ़्त Python Docs →
- किताब पेड Fluent Python (Ramalho) →
डेटा स्ट्रक्चर और एल्गोरिदम
ऐरे, हैशमैप, ट्री, ग्राफ़, डायनामिक प्रोग्रामिंग — ये सिर्फ़ इंटरव्यू के लिए नहीं हैं। यह जानना कि कब एक हैशमैप O(n²) को O(n) में बदल देता है, न्यूनतम अपेक्षा है।
- ट्यूटोरियल मुफ़्त NeetCode Roadmap →
- डॉक्स मुफ़्त Competitive Programming Algorithms →
- किताब पेड CLRS — Introduction to Algorithms (MIT Press) →
- किताब मुफ़्त Hello Algo (interactive) →
क्लीन कोड और रिफ़ैक्टरिंग
ऐसे नाम जो भ्रम न फैलाएँ, ऐसे फ़ंक्शन जो एक ही काम करें, ऐसे टेस्ट जो व्यवहार को दर्ज करें। यही रोज़ का अनुशासन सीनियर को जूनियर से अलग करता है।
- किताब पेड Clean Code (Robert C. Martin) →
- किताब पेड Refactoring (Fowler) →
- ट्यूटोरियल मुफ़्त Refactoring Guru →
2. वर्ज़न कंट्रोल और सहयोग
मुख्यGit में महारत
commit/push से आगे — rebase, cherry-pick, bisect, reflog। जब प्रोडक्शन टूटा हो और आपको वह कमिट ढूँढना हो जिसने गड़बड़ी की, तब यही काम आता है।
- किताब मुफ़्त Pro Git →
- ट्यूटोरियल मुफ़्त Learn Git Branching (interactive) →
- ब्लॉग मुफ़्त Oh Shit, Git!?! →
कोड रिव्यू
ऐसे PR लिखना जिन्हें रिव्यू करना आसान हो, और दूसरों के PR विनम्रता व बारीकी से रिव्यू करना। टीम की संस्कृति यहीं से आगे बढ़ती है।
- डॉक्स मुफ़्त Google Engineering Practices — Code Review →
- ब्लॉग मुफ़्त Michael Lynch — Human Code Reviews →
3. कंप्यूटर साइंस की नींव
मुख्यऑपरेटिंग सिस्टम
प्रोसेस, थ्रेड, मेमोरी मैनेजमेंट, फ़ाइल सिस्टम, सिस्टम कॉल। प्रोडक्शन में दिखने वाले हर अजीब व्यवहार की वजह यहीं से समझ आती है।
- किताब मुफ़्त Operating Systems: Three Easy Pieces →
- कोर्स मुफ़्त MIT Missing Semester →
नेटवर्किंग की बुनियादी बातें
TCP/IP, HTTP, DNS, TLS। जब आपकी सर्विस किसी दूसरी सर्विस तक नहीं पहुँच पाती, तो आप यही डीबग करते हैं।
- किताब मुफ़्त Beej's Guide to Network Programming →
- डॉक्स मुफ़्त HTTP Semantics (RFC 9110) →
- ट्यूटोरियल मुफ़्त How DNS Works (comic) →
4. सिस्टम डिज़ाइन
मुख्यडिज़ाइन की बुनियादी बातें
लेटेंसी, थ्रूपुट, उपलब्धता, कंसिस्टेंसी। हर सीनियर इंटरव्यू राउंड इन्हीं शब्दों के इर्द-गिर्द घूमता है।
- किताब पेड Designing Data-Intensive Applications (Kleppmann) →
- रिपॉज़िटरी मुफ़्त System Design Primer (GitHub) →
- चैनल मिश्रित ByteByteGo (Alex Xu) →
कैशिंग की रणनीतियाँ
कैश इनवैलिडेशन प्रोग्रामिंग के दो सबसे कठिन कामों में से एक है। Redis, cache-aside, write-through, TTL और स्टैम्पीड से बचाव सीखें।
- डॉक्स मुफ़्त Redis Docs →
- डॉक्स मुफ़्त AWS Caching Best Practices →
मोनोलिथ बनाम माइक्रोसर्विसेज़
इंडस्ट्री फिर से मॉड्यूलर मोनोलिथ की ओर लौट आई है। समझें कि कौन-सा ढाँचा असल में टीम के काम आता है, न कि सिर्फ़ रिज़्यूमे के।
- ब्लॉग मुफ़्त Martin Fowler — Microservices →
- किताब पेड Building Microservices (Newman) →
5. टेस्टिंग
मुख्ययूनिट टेस्ट
तेज़, हर बार एक जैसा नतीजा देने वाले और अलग-थलग। AAA (arrange-act-assert), टेस्ट डबल्स, टेबल-ड्रिवन टेस्ट।
- ब्लॉग मुफ़्त Martin Fowler — Unit Test →
- किताब पेड GOOS — Growing Object-Oriented Software →
इंटीग्रेशन और एंड-टू-एंड टेस्ट
वे टेस्ट जो वह पकड़ते हैं जो यूनिट टेस्ट से छूट जाता है। Docker Compose, testcontainers, Playwright, Cypress।
- डॉक्स मुफ़्त Testcontainers →
- डॉक्स मुफ़्त Playwright →
6. डेटाबेस
मुख्यSQL
हर बैकएंड इंजीनियर SQL लिखता है। जॉइन, एग्रीगेशन, विंडो फ़ंक्शन और EXPLAIN प्लान पढ़ने में महारत हासिल करें।
- ट्यूटोरियल मुफ़्त SQLBolt →
- किताब मुफ़्त Use The Index, Luke! →
- ट्यूटोरियल मुफ़्त PostgreSQL Tutorial →
NoSQL — कब और क्यों
डॉक्यूमेंट (Mongo), की-वैल्यू (Redis, DynamoDB), वाइड-कॉलम (Cassandra), सर्च (Elasticsearch)। चुनाव डेटा एक्सेस के पैटर्न से करें, हाइप से नहीं।
- डॉक्स मुफ़्त MongoDB Docs →
- डॉक्स मुफ़्त DynamoDB Guide →
7. वेब की बुनियादी बातें
मुख्यHTTP
मेथड, स्टेटस कोड, हेडर, कैशिंग, कुकीज़, CORS। वेब से जुड़ी हर चीज़ इसी परत पर चलती है।
- डॉक्स मुफ़्त MDN — HTTP →
- किताब मुफ़्त High Performance Browser Networking →
REST, GraphQL, gRPC
कब किसका इस्तेमाल करें। पब्लिक API के लिए REST, कई बैकएंड को एक साथ जोड़ने के लिए GraphQL, और अंदरूनी सर्विस-से-सर्विस बातचीत के लिए gRPC।
- डॉक्स मुफ़्त Google API Design Guide →
- डॉक्स मुफ़्त GraphQL Learn →
- डॉक्स मुफ़्त gRPC Docs →
8. CI/CD और DevOps की बुनियादी बातें
मुख्यDocker और कंटेनर
आज हर डिप्लॉयमेंट कंटेनर में होता है। इमेज, लेयर, मल्टी-स्टेज बिल्ड और इमेज का आकार छोटा रखने के तरीके सीखें।
- डॉक्स मुफ़्त Docker Docs →
- डॉक्स मुफ़्त The Twelve-Factor App →
GitHub Actions / CI पाइपलाइन
हर पुश पर बिल्ड, टेस्ट और डिप्लॉय। पाइपलाइन को कोड के रूप में लिखना अब आम चलन है।
- डॉक्स मुफ़्त GitHub Actions Docs →
9. सिक्योरिटी की बुनियादी बातें
सुझाया गयाOWASP Top 10
वे कमज़ोरियाँ जो हर दिन प्रोडक्शन में पहुँच जाती हैं। सूची पढ़ें, हर एक को समझें, और जानें कि अपने स्टैक में उन्हें कैसे रोकें।
- डॉक्स मुफ़्त OWASP Top 10 →
- कोर्स मुफ़्त PortSwigger Web Security Academy →
AuthN बनाम AuthZ
सेशन, JWT, OAuth2, OIDC, RBAC। इंटरव्यू में पूछे जाने वाले लगभग 30% डिज़ाइन सवाल इसी विषय पर होते हैं।
- डॉक्स मुफ़्त OAuth 2.0 →
- ट्यूटोरियल मुफ़्त OAuth 2.0 Simplified →
10. ऑब्ज़र्वेबिलिटी और डीबगिंग
सुझाया गयालॉग, मेट्रिक्स, ट्रेस
ये तीन स्तंभ हैं। स्ट्रक्चर्ड लॉग, RED/USE मेट्रिक्स, और OpenTelemetry के साथ डिस्ट्रिब्यूटेड ट्रेसिंग।
- डॉक्स मुफ़्त OpenTelemetry Docs →
- किताब मुफ़्त Google SRE Book →
प्रोडक्शन में डीबगिंग
सिर्फ़ लॉग से बग को दोहराना, हीप डंप पढ़ना, प्रोफ़ाइलर का इस्तेमाल करना। यही कौशल सीनियर को मिड-लेवल इंजीनियर से अलग करता है।
- डॉक्स मुफ़्त Brendan Gregg — Performance Methodology →
11. क्लाउड की बुनियादी बातें
सुझाया गयाAWS की बुनियादी बातें
EC2, S3, IAM, RDS, Lambda, VPC। वे सर्विसेज़ जिनसे हर बैकएंड इंजीनियर का वास्ता पड़ता है।
- डॉक्स मुफ़्त AWS Getting Started →
- डॉक्स मुफ़्त AWS — Getting Started →
12. करियर और कारीगरी
वैकल्पिकटेक्निकल डिज़ाइन डॉक्यूमेंट लिखना
हर बड़े बदलाव के लिए एक डॉक्यूमेंट होना चाहिए: समस्या, विकल्प, चुना गया तरीका और रोलआउट की योजना।
- ब्लॉग मुफ़्त Design Docs at Google (Malte Ubl) →
स्टाफ़ / प्रिंसिपल इंजीनियर का रास्ता
सीनियर से आगे बढ़ने के लिए क्या चाहिए। काम का दायरा, असर, और बिना सीधी रिपोर्टिंग टीम के तकनीकी नेतृत्व।
- किताब मुफ़्त StaffEng (Will Larson) →
- ब्लॉग मुफ़्त Irrational Exuberance (Will Larson blog) →