2009-04-04 17 views
5

मैं मोबाइल उपकरणों पर काम कर रहे लगभग 5+ वर्षों के अनुभव के साथ एक एम्बेडेड सॉफ्टवेयर डेवलपर हूं। मैंने हाल ही में अपना काम खो दिया है और एम्बेडेड फ़ील्ड (जो कि मैंने पार किया) में अधिकांश नौकरियों को सुरक्षा मंजूरी की आवश्यकता है और मैं इसके लिए योग्य नहीं हूं। इसलिए, इस कारण से और कुछ नया सीखने के लिए, मैं वेब विकास (वेब ​​सेवाओं या डेटाबेस का उपयोग करने वाले किसी भी सार्थक एप्लिकेशन) में जाने की योजना बना रहा हूं।एम्बेडेड सॉफ्टवेयर विकास से वेब विकास में संक्रमण कैसे करें?

कृपया मुझे मार्गदर्शन करें कि मुझे कौन से कारकों पर विचार करना चाहिए कि कौन सी तकनीक (एमएसएफटी/जावा से संबंधित/एलएएमपी) मुझे चुननी चाहिए। यदि संभव हो, तो उन परियोजनाओं के लिए सुझाव भी प्रदान करें जिनके पास वास्तविक जीवन में कुछ आवेदन हो सकता है, और मुझे इसके लिए कितना समय आवंटित करना चाहिए (क्योंकि मेरे पास इन दिनों बहुत सारे अनुसूचित समय हैं :))।

धन्यवाद।

+0

कहाँ हैं आप एम्बेडेड नौकरियों की तलाश में हैं? वे डीसी क्षेत्र में सुरक्षा उन्मुख होते हैं, लेकिन सुरक्षा के बाहर उन्मुख नहीं हैं। यदि आप स्थानांतरित करने के लिए खुले हैं, तो ओहियो और पश्चिमी पीए (उदाहरण के लिए, पिट्सबर्ग) में स्थानों पर विचार करें, वहां कई एम्बेडेड नौकरियां हैं – Uri

उत्तर

0

आईफोन डेवलपर मार्ग पर जाने के लिए एक अच्छा अगला कदम हो सकता है क्योंकि आपको क्लाइंट जिज्ञासा (मेमोरी लीक, सीमित सीपीयू इत्यादि) से निपटने का अनुभव सबसे अधिक संभावना है। आईफोन/आइपॉड टच को एक शक्तिशाली शक्तिशाली वेबकिट आधारित ब्राउज़र होने से भी लाभ होता है जो कि अधिकांश AJAX चला सकता है जिसे आप लिख सकते हैं और सर्वर साइड घटक के साथ इंटरफ़ेस कर सकते हैं।

चीजों को सस्ता रखने के लिए, आप एक ईसी 2 सर्वर या किसी अन्य वीपीएस पर जावा स्टैक चला सकते हैं जो आपके ऐप के सर्वर साइड हिस्से के रूप में कार्य कर सकता है।

यह डेवलपर लाइसेंस के लिए $ 99 निवेश है और देव के लिए सस्ते वीपीएस के लिए $ 5 एक महीने है, लेकिन यदि हवा सही दिशा में उड़ रही है तो भुगतान अधिक हो सकता है और जब आप अपना ऐप लॉन्च करते हैं तो पूर्ण चंद्रमा होता है)।

(ओह, और सस्ते नशे की लत खेल, लंबी पूंछ से पैसे की एक सभ्य राशि में ला सकता है जो जानता है कि हालांकि यह कब तक गंभीर खेल ईए जैसे प्रमुख खिलाड़ियों द्वारा iPhone पर शुरू किया जा रहा के साथ आयोजन करेगा)

+0

क्या आपको मूल आईफोन ऐप्स विकसित करने के लिए इंटेल मैक का उपयोग नहीं करना है? - यदि आप केवल सर्वर-आधारित अनुप्रयोगों का उपयोग करने के बारे में बात कर रहे हैं, तो डेवलपर लाइसेंस पर $ 99 खर्च करने की आवश्यकता नहीं है। – Nate

2

मैं आमतौर पर कहूंगा कि आपको मशीनों के लिए प्रोग्रामिंग में अपने अनुभव का लाभ उठाना चाहिए जो कम-से-कम और स्मृति पर कम हैं। हालांकि, वेब विकास एक बहुत ही अलग जानवर है। वेब सर्वरों में आमतौर पर बहुत अधिक कम्प्यूटेशनल पावर और मेमोरी होगी।

या तो एलएएमपी या अन्य तरीके से जाना, कंप्यूटिंग के एक अलग प्रतिमान की आवश्यकता है। वास्तव में अधिक गति और दक्षता को धक्का देने से आप अक्सर कई प्रक्रियाओं (डेटाबेस, स्क्रिप्टिंग भाषा, वेब-सर्वर) को एकीकृत करने पर अधिक समय व्यतीत करेंगे। संक्रमण इतना आसान नहीं है।

तो, पिछले उत्तर की तरह, आप मोबाइल-वेब विकास मार्ग पर विचार करना चाह सकते हैं। आप ओपनमोको/आईफोन/जीफोन डेवलपमेंट किट प्राप्त कर सकते हैं और प्रयोग शुरू कर सकते हैं। जो कुछ भी आप अपने हाथों (और अपने बजट के भीतर) प्राप्त कर सकते हैं।

1

सबसे पहले, एहसास करें कि आप स्विच करते समय पूरी तरह से शुरू कर रहे हैं। आप आईफोन, एंड्रॉइड या सिम्बियन में संक्रमण कर सकते हैं, लेकिन जब तक आप मजदूरी और भुगतान को फ्रीलान्स करने के लिए उपयोग नहीं करते हैं, तब तक मैं आपकी आजीविका नहीं लेता। आपके व्यक्तित्व और अवसर पर निर्भर करता है।

दूसरा, उस क्षेत्र में नेटवर्क स्थापित करें और उस पर काम करें जिसे आप नियोजित करना चाहते हैं। दयालु रहो, चुप रहो, विशिष्ट रहें: आपके अवसर सबसे अधिक संभावना से संबंधित होंगे जो आप जानते हैं और वे आपकी कितनी मदद करना चाहते हैं। स्क्रीन के सामने अपना जीवन व्यतीत करने वाले बहुत से प्रोग्रामर भूल जाते हैं कि नियोक्ता और ग्राहक कंपाइलर नहीं हैं। अच्छा होगा!

एक जमीन-अप दृष्टिकोण से, आप PHP/MySQL winestore इस पुस्तक में है कि में दिख सकता है:

Web Database Applications with PHP and MySQL

यह एक काफी कदम-दर-कदम (यदि पुराने) के लिए दृष्टिकोण है सीखना एक वेब-आधारित प्रोग्राम क्या करता है, और इसे कैसे किया जाए इसके बारे में एक दृष्टिकोण। AJAX और अन्य वेब 2.0 सामानों के बारे में चिंता न करें जब तक कि आप मूल बातें समझ सकें; यह मेरी राय में, भ्रमित हो जाएगा।

जावा में लिखे गए वेब-आधारित मुद्दे ट्रैकिंग सॉफ़्टवेयर का निर्माण करने वाले एटलसियन में ओपन-सोर्स डेवलपमेंट किट और 30-दिवसीय परीक्षण है। आप कुछ कोड और एक काफी विकसित क्षेत्र में काम को देखने के लिए देख रहे हैं, आप इसे बाहर की कोशिश कर सकते:

http://confluence.atlassian.com/display/DEVNET/

वेब विकास एम्बेडेड की तुलना में एक अलग skillset है, हालांकि आप का लाभ उठाने के लिए एक रास्ता मिल सकती है आपके यदि आप पाइथन या रूबी में काम करते हैं तो विस्तार और समस्या निवारण पर ध्यान केंद्रित करने की क्षमता। प्रकृति द्वारा वेब प्रोग्रामिंग अलग-अलग प्रणालियों और प्रोटोकॉल के समूह को एक साथ जोड़ रहा है, जहां मैं कल्पना करता हूं कि एम्बेडेड ऐसा कर सकता है, लेकिन बहुत कम विकल्प और शरारत के लिए सीमित शासन के साथ बहुत अधिक बाधित वातावरण में।

आमतौर पर, रसोई-सिंक भाषाओं (PHP, जावा, सी #) पर आधारित वेब प्रोग्रामिंग समस्याओं पर बिजली फेंकने लगती है, इसलिए आप आदर्श रूप से उस भाषा के साथ अधिग्रहण करने वाले कौशल का लाभ उठाने का एक तरीका ढूंढेंगे जो भविष्यवाणी की गई है प्रदर्शन, घंटी और सीटी नहीं। यद्यपि पाइथन की तुलना में कहीं अधिक जावा और सी # पद हैं, इसलिए आपको सावधानीपूर्वक (दुख) जहर चुनें।

PHP सभ्य है यदि आप स्टार्टअप/कम-मध्य-अंत क्षेत्र में प्रवेश करना चाहते हैं, जबकि जावा/सी # बेहतर भुगतान करेगा लेकिन परिस्थितियां आम तौर पर बहुत अलग होती हैं (कॉर्पोरेट/वाणिज्यिक वातावरण वे क्या हैं)।

आप जावा या सी # में प्रमाणित होने पर देख सकते हैं (PHP प्रमाणपत्र एक मजाक है)। वे आपको नौकरी नहीं देंगे, लेकिन चूंकि आप पहले से ही जानकार हैं, बस उस क्षेत्र में नहीं जहां आप सुधार करना चाहते हैं, प्रमाण पाठ्यक्रम आपको टूलसेट और शब्दावली को बदलने में मदद करेगा, साथ ही उद्देश्य को समझाएगा। कुछ नियोक्ता भी परवाह करते हैं।

Java Certification (Sun school)

C# Certification

कुछ मज़ा और अजगर/रूबी की तरह के लिए, ग्रूवी, एक जावा आधारित व्याख्या की भाषा उठा बारे में सोचते हैं।

http://groovy.codehaus.org/

यह एक अच्छा संसाधन सूची है अगर आप जावा में प्राप्त करने के लिए कर रहे हैं:

Essential Java resources

4

आप लिनक्स कर्नेल विकास विचार किया है? उपभोक्ता इलेक्ट्रॉनिक्स स्पेस में कई कंपनियां हैं जिन्हें लिनक्स ड्राइवर विकास के ज्ञान के साथ सॉफ्टवेयर इंजीनियरों की आवश्यकता है। यह अच्छा एम्बेडेड अनुभव वाले किसी के लिए काफी आसान संक्रमण है और यह भी बहुत मजेदार है!

इससे भी बेहतर, Linux Driver Development पुस्तक मुफ्त ऑनलाइन उपलब्ध है।

1

मैं वेब विकास में जाने के बारे में सोचने वाला एक एम्बेडेड सॉफ़्टवेयर डेवलपर भी हूं।ऐसा नहीं है क्योंकि मैं अपना काम खो रहा हूं (जर्मनी में एम्बेडेड लोगों के लिए पर्याप्त अवसर हैं, जहां मैं रहता हूं), लेकिन क्योंकि क्षेत्र में 9 साल बाद, मैं कुछ और कोशिश करना चाहता हूं।

यह समझें कि आप यहां नौकरियां नहीं बदल रहे हैं, आप उद्योगों को बदल रहे हैं। यदि आप इस क्षेत्र में अनुभवहीन हैं तो विशेष रूप से वर्तमान आर्थिक संदर्भ में कोई भी आपको वेब डेवलपर के रूप में किराए पर नहीं लेगा।

आप एक बड़ी इंटरनेट कंपनी (जैसे सेवा प्रदाता) पर नौकरी खोजने का प्रयास कर सकते हैं जहां आपके एम्बेडेड कौशल का मूल्य निर्धारण हो जाता है। मैंने हाल ही में एक आईएसपी में एक वीओआईपी डेवलपर स्थिति के लिए नौकरी पोस्टिंग देखी। वे सी और सी ++ से परिचित किसी व्यक्ति की तलाश में थे क्योंकि वे इन भाषाओं में लिखी गई कुछ ओपन-सोर्स लाइब्रेरी का उपयोग कर रहे हैं। यह उद्योगों को स्विच करने के लिए एक एम्बेडेड डेवलपर के लिए एक अच्छा प्रवेश बिंदु की तरह लगता है।

एक बार जब आप इस नए उद्योग में कर रहे हैं, तो आप शायद अवसरों वेब विकास के बारे में जानने के लिए के बहुत सारे होगा: नई वेब प्रौद्योगिकियों पर आंतरिक प्रशिक्षण, अनुभवी सहयोगियों, आंतरिक नौकरी प्रदान करता है से सीखने ...

संबंधित मुद्दे