सीनियर सॉफ़्टवेयर इंजीनियर बनने के लिए मैंने क्या सीखा
(neilkakkar.com)2018 में Bloomberg में शामिल होने के बाद अपने सीखे हुए अनुभवों को लगातार व्यवस्थित कर रहे एक डेवलपर की फ़ॉलो-अप पोस्ट
"मैं और बेहतर तरीके से कैसे बढ़ सकता हूँ?"
- दायरा बढ़ाकर आगे बढ़ें
→ सीखने की गति धीमी हो जाती है
→ Software Development Lifecycle (SDLC) से भी व्यापक product/infrastructure development lifecycle को देखें
→ सिर्फ़ गहराई में जाने की बजाय चौड़ाई में जाना, आगे चलकर उन गहरी चीज़ों तक ले जाता है जिन्हें और सीखना चाहिए
- 3 बड़े दिशानिर्देश: आसपास के लोगों से सीखना, अच्छे mental habits सीखना, और सोचने के नए tools हासिल करना
- आसपास के लोग क्या करते हैं, यह सीखें
→ product manager, sales, analyst को समझना ज़रूरी है
→ आख़िर लक्ष्य सिर्फ़ code लिखना नहीं है, अंतिम लक्ष्य ऐसा business बनाना है जो कमाई करने वाला product बनाए
→ ज़्यादा से ज़्यादा लोगों के साथ मीटिंग करें और उनके काम का context समझें
- अच्छे mental habits सीखें
→ Thinking Well (सोचने का तरीका): cognitive science का अध्ययन, Critical Thinking
→ हर day को थोड़ा और प्रभावी बनाने की strategies बनाएं
- सोच और mental model के लिए नए tools हासिल करें
→ समस्या आने पर नए tools खोजें और सीखें: हाल में DDD (Domain Driven Design)
→ mental models के लिए Hacker News पढ़ें
→ नई language सीखें
अन्य insights (यहाँ केवल कुछ ही दिए गए हैं। मूल लेख देखें.)
- Slack (product का नाम नहीं, बल्कि खाली जगह/फुर्सत) की रक्षा करें
→ ऊँची productivity लाने वाली चीज़ों में से एक है "धीमी गति"
→ जब थोड़ा अवकाश होता है, तभी प्रयोग करने, सीखने और सोचने का मौका मिलता है
- सवाल पूछें
→ लोग अक्सर अच्छे से सवाल नहीं पूछते। उन्हें डर होता है कि वे मूर्ख लगेंगे, या मूर्ख न लगने के लिए कुछ और बात करने लगते हैं
→ जवाब मिलने तक यह तय नहीं किया जा सकता कि सवाल मूर्खतापूर्ण है
→ सबसे पसंदीदा meta-question: "आपko वह (X) कैसे पता चला?"
किसी बात के बारे में पूछने के बाद अगर यह भी पूछें कि उन्हें वह कैसे पता चला, तो इस जवाब से स्वाभाविक रूप से समझ में आता है कि अगला क़दम क्या होना चाहिए
- Force multipliers: बढ़ाने/गुणा करने वाली चीज़ें (कोई व्यक्ति या कुछ और)
"Force वह है जो Jedi को शक्ति देती है। यह सभी जीवित प्राणियों द्वारा निर्मित एक energy field है, जो हमें घेरती है और हमारे भीतर से गुज़रती है। यही galaxy को एक साथ बाँधती है। - Obi-Wan Kenobi"
→ "एक sprint में मैंने बहुत ज़्यादा code नहीं लिखा, लेकिन मैंने changes coordinate किए, code review किया, test किया, दूसरे design suggestions दिए, और pair programming की। यह हमारी टीम के सबसे तेज़ sprints में से एक था"
→ ऐसा लगता है कि खुद Force Multiplier कैसे बनना है, यह जानना 10x developer होने से भी ज़्यादा मूल्यवान है
→ वास्तव में एक अच्छा Force Multiplier टीम culture भी होता है
4 टिप्पणियां
मूल लेख पढ़े बिना सवाल पूछने के लिए माफ़ी चाहता हूँ,
"क्या पूछना है" वाले हिस्से में
"आपको वह (X) कैसे पता चला?" वाला सवाल है न। क्या आप यहाँ "वह" के कुछ उदाहरण दे सकते हैं? मुझे यह हिस्सा ठीक से समझ नहीं आया, सिसकी
अरे, वहाँ "वो (X)" से मतलब उसी बात से है जो पूछी गई थी। जब पूछने वाले ने A पूछा, तो जवाब देने वाला यह पूछ रहा है कि उसे A का जवाब कैसे पता चला। इसे आप जानकारी हासिल करने के रास्ते के बारे में पूछना समझ सकते हैं।
बीच में meta सवाल के तौर पर कही गई "आपको वह कैसे पता चला?" वाली बात मुझे सच में बहुत अच्छी लगी।
अगर यह पता चल जाए कि उस व्यक्ति ने किस रास्ते से यह सीखा, तो शायद और भी बहुत कुछ सीखा जा सकता है।
1 साल पहले मैंने इस व्यक्ति के Bloomberg में जॉइन करने के बाद पहले 1 साल का सारांश लिखे गए लेख को शेयर किया था, और यह उसी लेख का फॉलो-अप है।
लेख के बाद वाले हिस्से में ऊपर दिए गए लेख में लिखे गए बिंदुओं पर फिर से लिखी गई बातें हैं (इसे Nuance कहा गया है)। तुलना करके पढ़िए।
"आपको यह कैसे पता चला?" इंटरव्यू लेने वाले के रूप में इंटरव्यू करते समय भी एक महत्वपूर्ण टूल था।