Software Development
TRYENGINEERING CAREER PATHWAYS
Software Development
Ang pag-develop ng software ay isang larangan na pinagsasama-sama ang mga eksperto na bumuo ng mga programa sa computer. Ang ilan ay bumuo ng mga application na nagdidirekta ng mga gawain sa isang computer o computer-driven na device, habang ang iba ay bumuo ng pinagbabatayan na software ng system na kumokontrol sa mga network o mas malawak na application. Maaaring kasangkot sila sa pagbuo ng software para sa mga laro sa computer, mga application sa negosyo, o mga medikal na tool. Ang mga nagtatrabaho sa landas ng karera na ito ay sanay sa pagtatrabaho sa teorya ng system, at pag-unawa sa mga teknikal na limitasyon ng hardware na kanilang ginagawang software upang kontrolin. Ang mga pangkat ng mga eksperto ay magtutulungan sa mas malalaking pagsisikap, at ang mga developer ng software ay karaniwang nakikipagtulungan sa mga computer programmer. Sa ilang sitwasyon, ang mga developer ay magsusulat ng code sa halip na magbigay ng mga tagubilin sa mga programmer.
Ano ang natatangi nito?
Ito ay isang pabago-bagong larangan dahil ang mga computer application at system ay kasangkot sa parami nang parami ng mga produkto at serbisyo. Mangangailangan ito ng mas maraming software na mabuo upang mapahusay ang mga feature ng produkto, mga application ng system at kasiyahan ng customer.
Mga Koneksyon sa Degree
Ang mga sumusunod ay mga halimbawa ng ilang mga kinikilalang degree na humahantong sa isang karera sa pagbuo ng software:
- Software engineering
- Multimedia Engineering
- Engineering Computer
- Teknolohiya ng Computer Engineering
- Engineering Systems Computer
- Elektriko Engineering
- Gaming Technology
Hanapin ang aming pandaigdigang database ng mga akreditadong programa sa engineering.
Nais malaman ang higit pa?
Mag-click sa mga asul na tab upang galugarin ang field nang mas detalyado at matutunan ang tungkol sa paghahanda at pagtatrabaho, ang mga berdeng tab na magiging inspirasyon ng mga taong nagtatrabaho sa pagbuo ng software at kung paano sila nakakaapekto sa mundo, at ang orange na mga tab para sa mga ideya kung paano matuto nang higit pa at maaari kang makilahok sa mga aktibidad, kampo, at kumpetisyon!
galugarin
Ang mga developer ng software ay kadalasang nagtatrabaho bilang bahagi ng isang team na nagdidisenyo ng bagong hardware, software, at mga system. Ang isang pangunahing koponan ay maaaring binubuo ng mga tao sa engineering, marketing, manufacturing, at disenyo, na nagtutulungan hanggang sa mailabas ang produkto.
Bagama't karaniwan ang isang normal na linggo ng trabaho, kapag ang mga deadline o produkto ay sumasailalim sa pagsubok bago ang paglabas ng produkto, malamang ang mga karagdagang oras. Gayundin, dahil maraming produkto ang lubos na mapagkumpitensya, ang isang bagong feature o release mula sa isang tagagawa ay maaaring mag-udyok sa iba na mag-agawan upang mag-alok ng parehong mga tampok sa kanilang sariling mga produkto. Ito, gaya ng maiisip mo, ay maaaring mag-udyok ng mga oras ng crunch na idinagdag sa isang normal na linggo ng trabaho.
Mayroong dalawang pangunahing uri ng mga developer ng software:
Ang mga software developer ng application ay nagdidisenyo ng mga computer application, gaya ng mga word processor at laro, para sa mga consumer. Lumilikha ang ilang software developer ng mga kumplikadong database para sa gobyerno o mga organisasyon. Gagawa rin sila ng mga mapagkukunan at programa na ginagamit sa internet o marahil sa loob ng intranet ng kumpanya. Maaaring kabilang dito ang mga sistema ng pamamahala ng file ng tauhan, accounting, pag-uulat, at pag-iingat ng medikal na talaan.
Ang mga developer ng software ng system ay gumagawa ng mga system na nagpapanatili sa mga computer na gumagana nang maayos. Ang mga ito ay maaaring pangkalahatang, gaya ng mga operating system para sa mga computer na direktang binibili ng pangkalahatang publiko, o mga system na binuo upang malutas ang isang problema para sa isang gobyerno o organisasyon. Kadalasan, ang mga developer ng software ng system ay nagtatayo rin ng interface ng system, na nagbibigay-daan sa mga user na makipag-ugnayan sa computer. Ang mga system software developer ay gumagawa ng mga operating system na kumokontrol sa karamihan ng consumer electronics na ginagamit ngayon, kabilang ang mga ginagamit ng mga cell phone at sasakyan.
Word Processing Software:
Ang software sa pagpoproseso ng salita ay higit na tinatanggap ngayon, ngunit ang epekto sa gobyerno, negosyo, pangangalagang pangkalusugan, at personal na buhay ay hindi maaaring maliitin. Bago ang pagdating ng software sa pagpoproseso ng salita, ang mga tao ay gumagamit ng mga makinilya upang bumuo ng mga titik para sa negosyo. Isaalang-alang na kung kailangan mo ng maraming kopya, ginamit ang carbon paper sa pagitan ng mga sheet ng papel at walang madaling paraan upang maghatid ng mensahe sa ibang lokasyon maliban kung ang isang messenger ay personal na naghatid ng tala, o ang parehong mga negosyo ay may mga fax machine. Ang mga karaniwang pamamaraan sa negosyo ay magdikta ng mensahe sa isang sekretarya o tulong na mag-type ng draft, na susuriin at mamarkahan, at pagkatapos ay muling i-type. Isipin ang nawalang produktibidad ng oras para sa lahat ng kasangkot.
Ang mga naunang word processor ay mga stand-alone na device na nakatuon sa function, ngunit mabilis silang napalitan ng mga software program na tatakbo sa mga personal na computer. Ang mga function ng software sa simula ay pinapayagan para sa pagsulat, pag-edit, at pag-format ng mga titik, ngunit nagbago sa paglipas ng panahon upang ganap na gumagana ang mga desktop publishing program.
Patuloy na ina-update at pinapahusay ng mga developer ng software ang word processing at software ng komunikasyon gamit ang mga bagong feature at gamit sa mga bagong kagamitan at application. Ang kontrol sa boses, awtomatikong paghahanap, spell check, pagsusuri sa grammar, at mga link sa pag-text ay ilan lamang sa mga halimbawa kung paano binago ng mga developer ng software ang mundo sa pamamagitan ng pagpoproseso ng salita!
Galugarin ang higit pang mga teknikal na detalye:
Ang mga tagapag-empleyo ng mga developer ng software ay mula sa mga startup na kumpanya hanggang sa mga matatag na pinuno ng industriya. Ang pagpapalawak ng teknolohiya sa pag-compute sa mas maraming produkto at sistema ay nagreresulta sa mas malawak na mga industriya na gumagamit ng mga propesyonal sa larangang ito. Halimbawa, ang mga engineering firm na nag-specialize sa paggawa ng mga tulay at power plant ay maaaring umarkila ng mga software developer para gumawa ng mga bagong geographic data system o mag-upgrade ng mga automated drafting system.
Ang industriya ng health at medical insurance at reinsurance carrier ay nangangailangan ng makabagong software upang pamahalaan ang mga bagong pagpapatala sa patakaran sa pangangalagang pangkalusugan at pangasiwaan ang mga kasalukuyang patakaran nang digital. Ang mga kumpanya ng komunikasyon ay nangangailangan ng mga inhinyero ng software ng computer upang mag-tap sa paglago sa merkado ng personal na komunikasyon. Ang mga pangunahing kumpanya ng komunikasyon ay may maraming mga bakanteng trabaho para sa parehong mga inhinyero ng application ng software ng computer at mga inhinyero ng computer system. Ang mga alalahanin sa mga banta sa seguridad ng computer ay maaaring magresulta sa mas maraming pamumuhunan sa software ng seguridad upang maprotektahan ang mga network ng computer at imprastraktura ng elektroniko. Patuloy na lumalaki ang mga aplikasyon!
Ang sumusunod ay sample lang ng ilang employer, sa labas ng gobyerno, para ma-explore mo ang uri ng mga proyektong pinagtatrabahuan sa buong mundo:
Para sa karamihan ng mga karera sa engineering:
- kailangan ng bachelor's degree
- maaaring magrekomenda ng master's degree para sa mga dalubhasa o interesado sa pamamahala
- ang mga mag-aaral ay maaari ring magsimula sa isang kaugnay na associate degree at pagkatapos ay lumipat sa isang bachelor's kapag sila ay nanirahan sa isang degree na landas.
- maraming estudyante ang kinakailangang lumahok sa isang co-op program habang nasa unibersidad upang magkaroon ng tunay na karanasan sa mundo sa kanilang napiling larangan.
- hindi talaga tumitigil ang edukasyon...kailangan ng mga inhinyero na manatiling napapanahon habang nagbabago ang teknolohiya at bumubuti ang mga materyales at proseso sa paglipas ng panahon.
- maraming mga propesyonal na lipunan ang nag-aalok ng mga sertipiko at coursework upang suportahan ang patuloy na edukasyon para sa kanilang mga miyembro.
Sa antas ng undergraduate, maaaring saklawin ng mga kursong software development at software engineering ang mga isyung teknikal na nakakaapekto sa arkitektura ng software, disenyo, at pagpapatupad at mag-aalok din ng gabay sa pamamahala ng proyekto at kontrol sa kalidad. Higit pa sa malinaw na kurikulum ng programming, maaaring kabilang sa mga kurso ang pag-develop na batay sa modelo, pagsusuri ng mga algorithm, etika, at inilapat na istatistika.
Mahalagang pumili ng degree sa engineering na na-accredit upang matugunan ang mga pangunahing pamantayan. Alamin ang higit pa at i-browse ang global database ng TryEngineering ng mga akreditadong programa sa engineering at computing.
Maging inspirasyon
Ang isa sa mga pinakamahusay na paraan upang galugarin kung ano ang maaaring maging tulad ng magtrabaho sa pagbuo ng software ay upang malaman ang tungkol sa mga taong kasalukuyang nagtatrabaho sa larangan.
- Augusta Ada King ay isang English mathematician at manunulat na nagtrabaho sa mekanikal na pangkalahatang layunin na computer ni Charles Babbage, ang Analytical Engine. Nakilala niya ang mga application na lampas sa pagkalkula, at nai-publish ang unang algorithm para sa layuning ito. Siya ay itinuturing na isa sa mga unang computer programmer.
- Linus Torvalds ay isang software engineer na siyang lumikha at, sa kasaysayan, ang pangunahing developer ng Linux kernel para sa mga pamamahagi ng Linux at iba pang mga operating system gaya ng Android at Chrome OS. Sa TED talk to the right, tinalakay niya ang mga katangian ng personalidad na nag-udyok sa kanyang natatanging pilosopiya ng trabaho, engineering at buhay.
- james goslin ay ang imbentor ng Java programming language. Siya ay isang Canadian computer scientist at kilalang inhinyero sa Amazon Web Services.
- Grace Hopper ay isang American computer scientist at rear admiral ng United States Navy. Isa siya sa mga unang programmer ng Harvard Mark I computer, at ang unang gumawa ng teorya ng machine-independent programming language.
- Martin Reddy ay isang Software Engineering Manager sa Apple. Kasama sa kanyang mga interes sa pananaliksik ang pakikipag-usap na artificial intelligence (AI) at mga application ng boses, habang sa unang kalahati ng kanyang karera ay nakatuon siya sa 3D computer graphics at animation. Sinabi niya na kapag nagtatrabaho sa Pixar, natutunan niya kung paano makakapagdulot ng mga kamangha-manghang resulta ang paghahalo ng mahuhusay na software engineer sa mga mahuhusay na artist.
- Margaret Hamilton ay isang American computer scientist, systems engineer, at may-ari ng negosyo. Siya ay direktor ng Software Engineering Division ng MIT Instrumentation Laboratory, na bumuo ng on-board flight software para sa Apollo program ng NASA.
Ang paglalaro ng kompyuter ay isa na ngayong mapagkumpitensya at kadalasang kumikitang isport, ngunit umiiral lamang ito sa anyo ngayon bilang resulta ng patuloy na pagsulong sa parehong hardware at software mula noong 1940s. Ang unang laro sa kompyuter ay karaniwang napagkasunduan na ang larong Spacewar!, na binuo noong 1962 sa MIT. Isa ito sa mga unang digital na laro na magagamit sa kabila ng isang grupo ng pananaliksik. Nagsimulang umunlad ang isang industriya nang ang console at coin-operated na mga arcade game ay malawak na magagamit at naging popular noong unang bahagi ng 1970s.
Di-nagtagal, naging abot-kaya ang mga home console na maaaring i-attach sa isang TV at ang trend ng paglalaro ay lumaganap, lalo na dahil ang kompetisyon sa pagitan ng iba't ibang manlalaro ay naging mas interactive sa paglalaro. Ang Atari 2600 at Intellivision system ay mahusay na mga halimbawa ng teknolohiya at software advances sa panahong iyon. Ang 1980s ay nakita ang pagpapakilala ng maagang online gaming at mga handheld na laro sa LCD. Sa mga tuntunin ng pag-unlad ng hardware, ang pinagsama-samang graphics controller ay isang pangunahing kontribyutor na nagbukas ng pinto sa mga graphics na maaaring suportahan ang mga makatotohanang kapaligiran sa paglalaro.
Mahirap para sa mga naunang inhinyero at eksperto sa kompyuter na hulaan na ang paglalaro ay magbubukas ng isang mapagkakakitaang landas ng karera para sa mga manlalaro mismo — o ang panonood ng mga kumpetisyon sa paglalaro ay magiging isang pandaigdigang isport na manonood. Ang paglalaro ay may malaking impluwensya sa kulturang popular. Kaya ano ang susunod?
Bukod sa halatang halaga ng entertainment, ang mga video game ay partikular na binuo upang tumulong sa edukasyon ng mga bata at inilapat bilang therapy para sa mga matatanda. Kabilang sa mga kamakailang pagsulong sa teknolohiya sa paglalaro ang mga stereoscopic na 3D visual, pagsubaybay sa ulo na maaaring magresulta sa mga bentahe sa pagganap ng kompetisyon, at mga interface ng hand gesture upang makontrol ng mga manlalaro ang mga aspeto ng laro gamit ang mga posisyon ng kamay. Nagkaroon pa nga ng mga pagsisikap na ipakilala ang paglalaro bilang isang Olympic sport!
Alamin ang higit pa:
- Ang Video Gaming ay Malapit nang Maging Mas Tunay: Tatlong Inobasyon na Kailangan Mong Malaman (IEEE Computer Society)
- WePc: Paano Umunlad ang PC Gaming (Isang Maikling Kasaysayan)
- Kasaysayan ng Personal Computer Games
- Mga Sikat na Graphics Chip: Ang Integrated Graphics Controller (IEEE Computer Society)
- Kasaysayan ng Mga Larong Mobile
Makasali
Maghukay ng mas malalim sa mga paksang nauugnay sa larangan ng software development na kinaiinteresan mo! Nag-ayos kami ng ilang link sa ibaba:
Galugarin:
- IBM: Ano ang Software Development?
- IT Chronicles: Ano ang Software Development?
- ITryEngineering News Blog
Panoorin ang:
Subukan:
- Maglaro ng ilang laro na may kasamang software development:
- Subukan ang isa sa mga aralin sa TryEngineering na nakatuon sa pagbuo ng software:
Ang mga club, kumpetisyon, at kampo ay ilan sa mga pinakamahusay na paraan upang tuklasin ang landas ng karera at subukan ang iyong mga kasanayan sa isang mapagkumpitensyang kapaligiran.
Mga Club:
- Maraming mga paaralan ang may mga coding club o mga pagkakataon para sa mga mag-aaral na magsama-sama at magtrabaho sa mga hamon sa coding.
- Girls Who Code
- Code.org
Mga kumpetisyon:
- Mga Kumpetisyon sa Coding ng Google idinisenyo upang akitin, hamunin, at subukan ang mga coder sa buong mundo. Subukan ang iyong kamay sa isa, o lahat ng tatlo.
- IEEE GameSIG at SDGA Game Festival isang collegiate competition para sa pagtatanghal ng mga talento sa pagbuo ng video game
- LibrengCodeCamp naglilista ng mga sikat na coding challenge website.
- CodinGame pagbutihin ang iyong mga kasanayan sa programming
Mga Camp:
- Subukan ang Engineering Summer Institute, US: Dumalo sa TryEngineering Summer Institute upang higit pang mag-coding at magtrabaho sa mga proyektong nauugnay sa computer.
- Google Computer Science Instituteay isang 3-linggong panimula sa coding para sa mga nakatatanda sa high school. Nilalayon ng programa na sanayin ang mga umuusbong na pinuno ng teknolohiya at mga innovator, na gaganapin sa maraming estado tuwing tag-araw, na may pagtingin sa loob ng mga operasyon ng Google. Ang pakikilahok ay libre.
- Women's Technology Program (WTP) ay isang apat na linggong summer academic at residential experience kung saan 60 babaeng estudyante sa high school ang nag-explore ng Electrical Engineering at Computer Science (EECS).
- Ang Capsule, France: 13-linggong boot camp sa coding
- Mga Codework, Iba't ibang lokasyon: immersive coding workshop.
Maraming unibersidad ang nag-aalok ng summer computing at coding na mga karanasan. Makipag-ugnayan sa departamento ng engineering ng iyong lokal na unibersidad upang makita kung ano ang inaalok nila.
Alam mo bang maaari mong tuklasin ang pagbuo ng software sa iyong komunidad? Isaalang-alang ang lahat ng oras na nakikipag-ugnayan ka sa software sa isang araw!
- Naglalaro ka ba ng computer games? Kinakailangan nila ang software para sa laro mismo, mga database para sa nilalaman, at isang secure na sistema ng pag-login.
- May cellphone ka ba? Isipin ang iba't ibang uri ng software sa telepono. Nariyan ang operating system, ang software para sa anumang mga app na iyong ginagamit...at pati na rin ang pag-encrypt at isang log in system...at oh oo, gumagawa din ito ng mga tawag sa telepono! Gayundin software upang magpatakbo ng isang camera, marahil mga sensor, at isang flashlight. Lahat ng iba't ibang mga kinakailangan sa software para sa pagpapatakbo.
- Maaaring mayroon kang sistema ng camera sa iyong tahanan o isang sistema ng camera ng seguridad sa iyong lokal na bangko. Anong software sa tingin mo ang kailangan para gumana ito?
- Ang iyong bahay o mga lokal na negosyo ba ay may sistema ng seguridad? Paano pinapatakbo ng software ang mga alarma? Anong uri ng mga sensor sa tingin mo ang kailangan?
- Ang iyong sasakyan ay nagsasama ng maraming software. Anong uri ng mga function ang maiisip mo na kinokontrol ng software?
Alamin ang higit pa:
Tiyaking makipag-ugnayan sa mga propesyonal na lipunan na nakatuon sa pagbuo ng software kung saan ka nakatira. Hindi lahat ay mag-aalok ng membership sa mga mag-aaral bago ang unibersidad, ngunit karamihan ay nag-aalok ng mga grupo para sa mga mag-aaral sa unibersidad, at tiyak na nag-aalok ng mga online na mapagkukunan upang matulungan kang tuklasin ang larangan.
Ilang halimbawa ng mga pangkat na tumutuon sa pagbuo ng software:
- Association para sa compute Makinarya
- Association for Women in Computing
- BCS, Ang Chartered Institute para sa IT
- Samahan ng Pananaliksik sa Pag-compute
- Alliance ng mga Developer
- IEEE Computer Society
- International Association of Computer Science at Information Technology
- International Association Developers Association
- Lipunan ng Industriya ng Software at Impormasyon
Ang ilang mga mapagkukunan sa pahinang ito ay ibinigay o inangkop mula sa US Bureau of Labor Statistics at ang Career Cornerstone Center.