คำถามที่คาดหวังในการสัมภาษณ์ผู้พัฒนาตำแหน่ง Magento Junior


33

ประการแรกฉันอยากจะบอกว่าฉันหวังว่าฉันจะไม่โพสต์ผิดที่กับคำถามนี้และถ้าฉันโปรดแนะนำฉันที่ (ถ้าที่ใดก็ได้ในโลก stackexchange มีความเหมาะสม) ฉันควรโพสต์มัน

ฉันมีบทสัมภาษณ์สองสามข้อที่กำลังจะเกิดขึ้นสำหรับตำแหน่งนักพัฒนาระดับต้นของ Magento ฉันมีประสบการณ์ในการพัฒนา Magento แต่ฉันไม่เคยสัมภาษณ์งานเหล่านี้ดังนั้นฉันจึงไม่แน่ใจว่าจะเกิดอะไรขึ้น

ฉันขอขอบคุณความคิดเห็นและคำตอบทั้งหมดและฉันคิดว่าโพสต์นี้อาจเป็นประโยชน์กับผู้พัฒนารุ่นเยาว์รายอื่น ๆ ที่พยายามเจาะเข้าสู่วีโอไอพี


7
ฉันคิดว่านี่เป็นหัวข้อที่ไม่สมบูรณ์ แต่ฉันไม่สามารถละเว้นการแสดงความคิดเห็นได้ คาดหวังสิ่งนี้: inchoo.net/wp-content/uploads/2010/01/inchooers1.jpg
Marius

ขออภัยถ้าอยู่นอกหัวข้อ !! ในการตอบสนองต่อลิงค์ของคุณฉันรู้มากพอเกี่ยวกับคุณภาพเยี่ยมที่จะได้รับเรื่องตลก แต่ฉันอาจจะมีการแสดงออกเช่นเดียวกับผู้ชายคนนั้นหลังจาก 3 ชั่วโมงเช่นกัน :)
พัฒนาชั่วโมง

ขออภัยถ้าสิ่งนี้นำพาทุกคนออกจากหัวข้อ! ฉันจะเริ่มต้นด้วยการคาดหวังว่า Dev จะรู้รายการอย่างน้อยในการทดสอบของ FED ฉันยังจะให้พวกเขาเป็น
เส้นตาย

1
คำตอบ "ถูกต้อง" นั้นขึ้นอยู่กับความคาดหวังของงาน ฉันไม่มีความตั้งใจที่จะจ้างนักพัฒนาของวีโอไอพีเนื่องจากนักพัฒนาวีโอไอพีที่มีอยู่นั้นหายากเหมือนกวางสีขาว จ้างนักพัฒนาที่ดีก่อนและจ่ายค่าประสบการณ์วีโอไอพีที่พวกเขาสาธิตในการสัมภาษณ์ มีคำตอบที่ยอดเยี่ยมที่นี่ซึ่งครอบคลุมฐานทั้งหมดดังนั้นฉันไม่จำเป็นต้องเพิ่ม
benmarks

คำตอบ:


35

เมื่อฉันสัมภาษณ์ผู้สมัครและโดยเฉพาะผู้สมัครรุ่นแรกฉันประเมินว่าพวกเขาจะเป็นนักพัฒนาที่ดีหรือไม่ ไม่เป็นไรวีโอไอพี

ดังนั้นคุณจะได้ยินคำถามทั่วไปไม่ใช่วีโอไอพีจำนวนมากคำถามจากฉันล่วงหน้า นี่เป็นเพียงไม่กี่:

  • อธิบายความแตกต่างระหว่างแผนที่แฮชอาร์เรย์ชุดสะสมและรายการ
  • อธิบายสิ่งที่คุณคิดว่า "การสืบทอด" หมายถึงและยกตัวอย่างให้ฉันที่ไม่เกี่ยวข้องกับรถยนต์หรือสมาชิกในครอบครัว
  • ชื่อช่องโหว่ความปลอดภัย 3 ประเภทที่แนะนำโดยผู้ใช้ที่ไม่ได้กรอง
  • อธิบายว่าคำสั่งที่เตรียมไว้คืออะไรและทำอะไร
  • ฟีเจอร์ใหม่ที่คุณโปรดปรานใน PHP 5.5 คืออะไร?
  • ชื่ออย่างน้อย 3 เฟรมเวิร์ค PHP ที่สำคัญ
  • ความแตกต่างระหว่างการประกาศฟังก์ชั่นและการแสดงออกของฟังก์ชั่นคืออะไร?

คำถามที่ไม่ใช่ด้านเทคนิค:

  • บอกฉันครั้งสุดท้ายที่คุณทำผิดพลาดซึ่งทำให้ บริษัท หรือลูกค้าต้องเสียเงินและ:
  • คุณเรียนรู้อะไรจากความผิดพลาดของคุณ?
  • คุณทำอะไรเพื่อให้เป็นปัจจุบันเกี่ยวกับเทคโนโลยี?
  • คุณเรียนรู้อะไรในช่วงนอกเวลาเรียน

จากนั้นฉันอาจขอให้พวกเขาทำการตรวจสอบโค้ดด้วยการทำงานของพวกเขาใน Github หรือสิ่งที่พวกเขาส่งมา เราอาจทำแบบฝึกหัดไวท์บอร์ดเช่น Fizzbuzz อาจจะเป็นทางเลือกจากProject Euler ... บางสิ่งบางอย่างเพื่อผลกระทบนั้น ฉันแค่พยายามรวมมันที่นี่และดูว่าพวกเขาจัดการกับปัญหาที่พวกเขาอาจไม่ได้พบเจอ

ถ้าฉันพอใจและฉันรู้ว่าผู้สมัครมีประสบการณ์วีโอไอพีฉันอาจถามคำถามวีโอไอพีที่เฉพาะเจาะจงมากขึ้น :

  • Magento MVC แตกต่างจาก MVC แบบคลาสสิกอย่างไร (หรือ Zend Framework MVC)
  • ชื่อ 3 ประเภทของวีโอไอพีรุ่น
  • อธิบายหรือยกตัวอย่างของรหัสวีโอไอพีและ / หรือทางเลือกของธีม
  • เมื่อใดที่จะทำการแก้ไขแกน (คำตอบ: ไม่เคย)
  • แสดงเทคนิคอย่างน้อย 3 รายการเพื่อแทนที่ฟังก์ชันการทำงานเริ่มต้น / แกนหลัก

ณ จุดนี้ฉันอาจถามคำถามยาก ๆ หรือให้พวกเขาร่างบางอย่างให้ฉัน - บางทีขั้นตอนการชำระเงินของ Magento ฉันอาจให้พวกเขาอธิบายโฟลเดอร์ย่อยทั้งหมดใน Magento Extension ฉันอาจถามพวกเขาว่าแบบจำลองนามธรรมขยายสำหรับฟังก์ชันการทำงานที่ต้องการ

ฉันหวังว่านี้จะช่วยให้การ - ขั้นตอนการเช่าเป็นเรื่องยากสำหรับทั้งสองฝ่ายที่โต๊ะ ในรอบแรกของการจ้างงานครั้งแรกของฉันฉันโทรศัพท์คัดเลือกผู้สมัครกว่า 75 คนจากการส่งเรซูเม่กว่า 500 ครั้งและส่งต่อการสัมภาษณ์แบบตัวต่อตัว 2 หรือ 3 คน ไม่มีพวกเขาทำงานได้ - ดังนั้นในกรณีของฉันเมื่อคุณกำลังนั่งอยู่บนโต๊ะจากฉันฉันหยั่งรากสำหรับคุณ! ฉันต้องการให้คุณทำมัน! ฉันต้องการให้กระบวนการทรมานของขั้นตอนการจ้างงานสิ้นสุดลงเพื่อให้เราสามารถทำสิ่งที่เราทำได้ดีที่สุด - สร้างผลิตภัณฑ์ที่ยอดเยี่ยม

เคล็ดลับคือการทำให้แสงสว่างและทำให้เป็นประโยชน์และอย่างน้อยประสบการณ์การศึกษาสำหรับผู้สมัคร


9
"เมื่อไหร่ที่จะทำการแก้ไขแกน" - เมื่อคุณเป็นนักพัฒนาหลักวีโอไอพี? :)
Dmytro Zavalkin

1
แล้วถึงแม้ ... อาจจะไม่ได้ :)
philwinkle

3
ฟิลสำหรับฉันมันก็โอเคเมื่อมันแก้ไขข้อผิดพลาดในลักษณะเดียวกันรุ่นถัดไปจะเป็นที่รู้จักหรือไม่การแก้ไข backporting
Fabian Blechschmidt

@FabianBlechschmidt กำลังจะพูดในสิ่งเดียวกัน ฉันจำการแก้ไขที่เพิ่มลงใน EE เวอร์ชันใหม่ได้ ลูกค้าต้องการการแก้ไขง่ายๆนี้ แต่ไม่ได้เตรียมที่จะอัปเดตทั้งร้าน แล้วถึงแม้ผมจะยังคงปล่อยให้เป็นไฟล์ข้อความสั้น ๆ ที่อธิบายถึงการเปลี่ยนแปลงที่มีไฟล์ที่มีการเปลี่ยนแปลงบรรทัด # ฯลฯ
pspahn

ทำไมอุปกรณ์วีโอไอพีจึงจำเป็นต้องสามารถไขปริศนาคณิตศาสตร์ที่ซับซ้อนได้?
กองโจร

11

จากการสนทนาที่ฉันมีกับพันธมิตรวีโอไอพี (หมายเหตุ: ฉันยังไม่ได้สัมภาษณ์นักพัฒนาซอฟต์แวร์ด้วยตัวเอง) ด้านล่างนี้เป็นเคล็ดลับสองสามข้อ:

1) อย่ามองหานักพัฒนา Magento ค้นหา OO PHP ที่ดี (หรือ Java ฉันเคยได้ยินเรื่องราวความสำเร็จของการพัฒนา Java devs do Magento) และฝึกอบรมพวกเขา เรายังมีบางคนในบ้านที่เปลี่ยนจาก Java เป็น Magento และพวกเขาไม่มีนิสัยที่ไม่ดีของ devs PHP ทั่วไป

2) อย่าใช้ บริษัท จ้างภายนอก - พวกเขาจะไม่พบใครเลยและพวกเขาไม่รู้ว่าพวกเขากำลังทำอะไร (เช่นพวกเขาไล่ล่าฉันเพราะฉันทำงานกับ Magento และฉันเป็นนักพัฒนามานานแล้ว - แต่ฉันไม่ใช่ Magento นักพัฒนา)

3) ไม่แน่ใจว่าบทบาท / บริษัท ของคุณคืออะไร ถ้าคุณต้องการที่จะพัฒนาใช่มองหาคน อย่างไรก็ตามหากคุณเป็นผู้ค้าขายหรือต้องการทำเพียงหนึ่งโครงการให้พิจารณาเลือกพันธมิตรที่มีประสบการณ์แทน

4) รับ @benmarks เพื่อตอบ - เขาใช้การฝึกอบรมภายในสำหรับพนักงานใหม่ที่ BlueAcorn และหวังว่าจะสามารถแบ่งปันข้อมูลเชิงลึกที่ดีได้


1
ข้อดีของ Java devs ฉันคิดว่าพวกเขาส่วนใหญ่ได้ทำงานกับสิ่งต่าง ๆ เช่น XSLT ซึ่งจะช่วยให้พวกเขาเข้าใจระบบเลย์เอาต์ของ Magento
pspahn

9

คำถามแรกที่คุณอาจคาดหวังคือบางสิ่งตามแนวของ:

นี่คือการติดตั้งเริ่มต้นตอนนี้ลบบล็อก "Back to School" ออกจากโฮมเพจโดยใช้ local.xml

คุณอาจพบบางสิ่งเช่น:

ค้นหาสาเหตุที่กระบวนการเช็คเอาต์เริ่มต้นไม่ทำงานอย่างที่ควรจะเป็น (คำใบ้ให้ตรวจสอบข้อผิดพลาดจาวาสคริปต์ในคอนโซล)

หลังจากติดตั้งโมดูลบุคคลที่สามซึ่งปรับเปลี่ยนวิธีแสดงรูปภาพผลิตภัณฑ์หน้ามุมมองผลิตภัณฑ์จะขาดคุณสมบัติอื่นที่สร้างขึ้นโดยโมดูลบุคคลที่สามแยกต่างหาก ขั้นตอนแรกในการแก้ไขข้อบกพร่องนี้คืออะไร (คำใบ้: 'ขึ้นอยู่กับ')

ลูกค้าต้องการพื้นที่บนโฮมเพจซึ่งสามารถแก้ไขเนื้อหาได้โดยไม่ต้องจัดการกับ 'รหัส' มากนัก คุณจะใช้สิ่งนี้อย่างไร

ฉันเห็นคำถามทั้งหมดเหล่านี้เป็นการส่วนตัวในระหว่างการสัมภาษณ์

และแน่นอนว่าคาดว่าจะมีคำถามบางอย่างเกี่ยวกับข้อผิดพลาดของวีโอไอพีทั่วไประหว่างการพัฒนา (ล้างแคชทำดัชนีความผิดพลาด base_url ฯลฯ ) หากคุณตอกย้ำทุกสิ่งทุกอย่างให้คาดหวังเรื่องที่ยากขึ้น (EAV เขียนคลาสใหม่อัปเดตบล็อกผ่าน AJAX)

ทั้งนี้ขึ้นอยู่กับผู้ที่คุณสัมภาษณ์อาจเพียงพอที่จะมีความเข้าใจที่ดีเกี่ยวกับพื้นฐานบางประการของ Magento (เลย์เอาต์ XML, การทำงานกับแม่แบบ) เนื่องจากเดือนแรกของการจ้างงานของคุณอาจเกี่ยวข้องกับการแก้ไขปัญหาส่วนหน้าแบบสุ่มบนเว็บไซต์สุ่ม . หากคุณค่อนข้างใหม่กับ Magento และพบว่าตัวเองได้รับการว่าจ้างในฐานะนักพัฒนาซอฟต์แวร์ jr คาดหวังว่าจะได้เรียนรู้จากการทำงานเป็นจำนวนมาก


8

ฉันคิดว่าจะโพสต์คำถามเดียวกัน! ฉันสร้างรายการตามคู่มือการศึกษาของ FED ฉันได้แบ่งปันเป็น Google เอกสารหากใครต้องการแสดงความคิดเห็นฉันจะสนใจที่จะฟังสิ่งที่คุณพูด

https://docs.google.com/document/d/19iMKDOFBwYpq6wDQBknT8u5kDYFh7DssdjBDPTTsHwA/edit?usp=sharing


6

ฉันไม่แน่ใจว่าจะมีคำถามและงานอะไรให้จูเนียร์ได้บ้าง แต่คุณสามารถเห็นแหล่งข้อมูลเหล่านี้เพื่อการปฐมนิเทศที่ถูกต้องและการสัมภาษณ์:
1. https://stackoverflow.com/questions/16289832/preparing-for-magento -front-end-certified
2. การศึกษาเพื่อเป็นนักพัฒนาที่ได้รับการรับรองจาก Magento
3. http://blog.belvg.com/tag/study-guide
4. http://www.vskills.in/certification/Certified-Magento- ตัวอย่างคำถาม
5. แบบมืออาชีพhttp://magentoquiz.com/magento-certification/magento-exam-sample-questions/
6. http://magestudyguide.com/


ไชโยเพื่อนพวกเขาดูดี
พัฒนา



0

ด้านล่างนี้เป็นคำถามสัมภาษณ์วีโอไอพี:

  1. วิธีรับรหัสหน้า CMS ใน Magento?
  2. ความแตกต่างระหว่าง Up-sell, cross sell และผลิตภัณฑ์ที่เกี่ยวข้องหรือไม่
  3. โมดูลที่กำหนดเองสามารถมีเนมสเปซได้มากกว่าหนึ่งรายการหรือไม่
  4. ความแตกต่างระหว่างโมดูลคอนโทรลเลอร์และคอนโทรลเลอร์?
  5. คำขอไหล
  6. Magento: จำเป็นต้องตั้งค่าการอนุญาตไฟล์
  7. ความสัมพันธ์ระหว่างผลิตภัณฑ์ที่กำหนดค่าได้กับผลิตภัณฑ์แบบง่าย ๆ นั้นถูกเก็บไว้ในฐานข้อมูลอย่างไร
  8. ประเภทบล็อกที่ใช้กันทั่วไปคืออะไร อะไรเป็นพิเศษในประเภทบล็อก core / text_list
  9. อธิบายประเภทต่างๆของเซสชันใน Magento (เช่นลูกค้า / เซสชันเช็คเอาต์ / เซสชันแกน / เซสชัน) และสาเหตุที่คุณเก็บข้อมูลไว้ในประเภทเซสชันต่างๆ
  10. จำเป็นต้องให้ Namespace ในขณะที่สร้างโมดูลแบบกำหนดเองใน Magento หรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.