Lập trình ứng dụng di động: 13 câu hỏi nhà tuyển dụng nên hỏi để tuyển đúng lập trình viên

, ,

 Hãy hỏi những câu hỏi này để đảm bảo bạn tìm được một lập trình viên ứng dụng di động có năng lực, khả năng và kỹ năng giao tiếp phù hợp.

13 questions to ask mobile app developer

Ứng dụng dành cho thiết bị di động là nhu cầu thiết yếu khi mà điện thoại thông minh ngày nay là một công cụ lý tưởng để thu hút khách hàng, bán sản phẩm và phát triển doanh nghiệp của bạn.

Theo Comscore ( một công ty là một công ty đo lường và phân tích truyền thông của Mỹ ) , 1,8 tỷ người trên thế giới đang sở hữu điện thoại di động, vượt xa số lượng máy tính để bàn vào năm 2014. Nghiễm nhiên, thiết bị di động đang là một trong những cơ hội to lớn cần được tận dụng triệt để.

Cho dù bạn là giám đốc điều hành của một công ty với ngân sách khổng lồ hay một doanh nhân đang tìm cách khởi động công ty khởi nghiệp của mình, bạn sẽ có rất nhiều thời gian, tiền bạc và mong muốn phát triển ứng dụng dành cho thiết bị di động, nên việc tìm kiếm nhà phát triển ứng dụng di động phù hợp là cực kỳ quan trọng.

Nhưng nếu bạn là một người không rành về kỹ thuật hoặc chưa quen với ngành phát triển ứng dụng di động, việc tìm kiếm một lập trình viên phù hợp để xây dựng ứng dụng dành cho thiết bị di động của bạn có thể là một nhiệm vụ gần như bất khả thi.

Một số điều mà bất cứ nhà tuyển dụng nào trong lĩnh vực cũng hay quan ngại :


  • Làm thế nào để nhận biết được đâu là một lập trình viên “chất lượng” ?

  • Các lập trình viên “phù hợp” nên thông thạo những ngôn ngữ, công nghệ và nền tảng nào?

  • Làm thế nào bạn có thể đánh giá lập trình viên nào có thể giao tiếp tốt và lập trình viên nào sẽ khó tương tác với bạn trong quá trình phát triển?

Những “nan đề” này có thể gây ra rất nhiều khó khăn trong quá trình tuyển dụng. Nhưng nếu bạn có thể hỏi đúng câu hỏi, thì một nửa vấn đề đã được giải quyết.

Trong suốt những năm phát triển ứng dụng di động của mình, chúng tôi đã nhận được rất nhiều câu hỏi quan trọng từ các khách hàng tiềm năng. Vì vậy, chúng tôi đã tổng hợp một danh sách các câu hỏi bạn có thể hỏi để đánh giá một cách tốt hơn chất lượng của các lập trình viên tiềm năng cho dự án ứng dụng di động tiếp theo của bạn.

Chúng tôi đã phân loại các câu hỏi thành bốn nhóm chính (nhấp vào các liên kết để chuyển xuống từng phần):

  1. Sự phù hợp của lập trình viên – Kinh nghiệm về phát triển ứng dụng di động của lập trình viên có phù hợp với ứng dụng mà bạn đang hướng đến hay không ?

  2. Năng lực của lập trình viên – Các kỹ năng lập trình viên nên có trong việc tạo ra các tính năng, chức năng và thiết kế cần thiết cho ứng dụng của bạn.

  3. Quy trình phát triển – Cách mà lập trình viên xử lý công việc, giao tiếp và làm việc trong quá trình phát triển.

  4. Pháp lý và quản trị – Quyền sở hữu ứng dụng và cơ cấu chi phí trong dự án.

 

Hãy xem các câu hỏi dưới đây.

Sự phù hợp của lập trình viên

1) Bạn có thể cung cấp ví dụ về các ứng dụng di động/sản phẩm bạn đã phát triển không?

Chúng ta có thể dựa vào hiệu suất làm việc và các ứng dụng khác mà họ đã xây dựng trong quá khứ để hiểu rõ về kỹ năng của một nhà phát triển ứng dụng di động và những gì họ có thể đáp ứng.

Một nhà phát triển ứng dụng “chất lượng” thường tự hào về những gì mà họ đã làm được và sẽ sẵn sàng cung cấp các ví dụ về các ứng dụng mà họ đã tạo ra. Thường họ sẽ cung cấp cho bạn các liên kết đến App Store của Apple và Google Play (hoặc các cửa hàng ứng dụng khác, nếu có liên quan) để cho bạn xem các ứng dụng mà họ đã xây dựng và mô tả vai trò của họ trong việc phát triển các ứng dụng đó.

Các nhà phát triển có ít kinh nghiệm có thể sẽ không hoàn toàn tự phát triển được một ứng dụng, nhưng họ nên cởi mở và trung thực về khả năng thật sự của họ.

Nếu lập trình viên do dự trong việc phản hồi yêu cầu của bạn, bạn có thể chắc rằng người đó không phải là một nhà phát triển ứng dụng có kỹ năng cao,chưa có kinh nghiệm và họ không phù hợp với bạn.

Hình ảnh cung cấp bởi Graphberry

2) Bạn đã xây dựng ứng dụng di động cho những công ty có quy mô nào?

Kinh nghiệm làm việc với một công ty có quy mô tương tự như công ty của bạn là một yếu tố rất quan trọng nhưng đôi khi lại bị bỏ qua trong việc lựa chọn nhà phát triển ứng dụng di động phù hợp.

Cách mà một doanh nghiệp lớn được vận hành sẽ rất khác so với một công ty khởi nghiệp hoặc một doanh nghiệp nhỏ, và những văn hóa khác nhau này có thể sẽ được bộc lộ trong quá trình phát triển ứng dụng.

Các công ty lớn hơn có thể yêu cầu những tài liệu chuyên nghiệp hơn, quy trình quản lý dự án cụ thể, nhiều cuộc họp hơn và nhiều sự thay đổi hơn.

Các doanh nghiệp nhỏ hơn cần giám sát ngân sách nhiều hơn và có các quy trình ít “nghiêm ngặt” hơn.

Một nhà phát triển ứng dụng di động có kinh nghiệm làm việc với một công ty trong giai đoạn tương tự như của bạn có thể rất có giá trị, vì nhà phát triển đó có thể hiểu rõ hơn về quy trình doanh nghiệp của bạn và cách mà mọi thứ vận hành.

Điều này sẽ giảm thiểu khả năng xảy ra bất đồng “văn hóa doanh nghiệp” và tránh được những xung đột không đáng có để mọi người có thể tập trung vào việc xây dựng ứng dụng di động tốt nhất có thể.

3) Khách hàng trước đây và hiện tại của bạn là ai và tôi có thể nói chuyện với họ không?

Việc biết được những kết quả trong công việc trước đây của lập trình viên là rất có giá trị. Nhưng việc biết được quá trình để họ đạt được những kết quả đó cũng quan trọng không kém.

Đó là lý do tại sao việc nói chuyện với khách hàng trước đây và hiện tại của một lập trình viên là rất hữu ích và có thể cung cấp cho bạn một số góc nhìn về cách mà một nhà phát triển quản lý các mối quan hệ trong suốt quá trình phát triển.

Bạn nên hỏi rằng lập trình viên đó đáng tin cậy như thế nào, họ giao tiếp như thế nào và cách họ đối phó với áp lực và deadlines.

Tìm hiểu về loại dự án mà họ đã cùng nhau thực hiện, có những khó khăn gì và đã được giải quyết như thế nào, và mức độ nhanh nhạy và linh hoạt của lập trình viên khi mọi thứ không diễn ra theo như kế hoạch.

Ngoài việc hỏi đúng câu hỏi, hãy lắng nghe giọng điệu và thái độ của cuộc trò chuyện để xem liệu người giới thiệu của ứng viên có phấn khích khi nói về quá trình làm việc với họ hay không.

Nhưng đôi khi những nhà tuyển dụng hay khách hàng trước đây của lập trình viên sẽ chỉ chia sẻ với bạn nhưng thông tin đó nếu họ và lập trình viên có một mối quan hệ tốt mà thôi.

Nếu bạn vẫn còn một số băn khoăn về lập trình viên sau khi nói chuyện với khách hàng của họ, bạn có tham khảo trên LinkedIn hoặc Facebook và hỏi về tính cách, kỹ năng và năng lực của họ.

Bất kể bạn đi theo tuyến đường nào, nói chuyện với những người đã từng làm việc với lập trình viên trong quá khứ sẽ giúp bạn làm việc với họ tốt hơn trong tương lai.

4) Bạn hiểu khách hàng và doanh nghiệp của tôi như thế nào?

Bạn có thể không hỏi rõ ràng liệu một nhà phát triển ứng dụng di động có hiểu khách hàng và doanh nghiệp của bạn hay không, nhưng đây là điều rất quan trọng mà bạn nên nắm rõ khi bạn tìm kiếm đối tác tiềm năng của mình.

Nếu nhà phát triển ứng dụng di động không dành thời gian để hiểu nhu cầu, mong muốn và hành vi của khách hàng, lập trình viên sẽ không thể đồng cảm cũng như hiểu lý do tại sao khách hàng muốn sử dụng ứng dụng của bạn và không thể xây dựng các tính năng và trải nghiệm người dùng cần thiết cho họ.

Sẽ là một dấu hiệu tốt nếu như lập trình viên đã từng làm việc với đối tượng khách hàng tương tự như doanh nghiệp của bạn. Nếu không, hãy nói với họ về đối tượng khách hàng mà doanh nghiệp của bạn đang hướng đến để xem họ hiểu nhiều như thế nào về đối tượng khách hàng đó và để xem họ có phù hợp hay không.

Một nhà phát triển ứng dụng di động không hiểu khách hàng hoặc doanh nghiệp của bạn, không dành thời gian để cố gắng tìm hiểu, thì đó không phải là người mà bạn muốn làm việc cùng.

Năng lực của lập trình viên

5) Bạn có bao nhiêu kinh nghiệm trong việc xây dựng các tính năng cụ thể cần thiết cho ứng dụng của chúng tôi ?

Bạn là người biết rõ nhất về các tính năng và chức năng mà bạn muốn có trong ứng dụng di động của mình và bạn cần đảm bảo rằng lập trình viên của bạn có thể làm được chúng.

Bạn có cần tính năng xếp hạng và đánh giá có trong ứng dụng không? Bạn có yêu cầu ứng dụng phải tương thích với điện thoại không? Bạn có cần ứng dụng của mình có thể kết nối với phần mềm back-end hiện có không?

Ngoài ra, việc xem xét các ứng dụng khác mà lập trình viên đã làm được sẽ hữu ích trong việc xem họ có kinh nghiệm trực tiếp trong việc xây dựng các tính năng bạn mong muốn hay không.

Không phải tất cả các lập trình viên sẽ có kinh nghiệm xây dựng tất cả các loại tính năng, nhưng điều đó không có nghĩa là họ không thể.

Nếu không có bất kỳ kinh nghiệm trực tiếp nào, hãy hỏi xem họ có quen thuộc với tính năng đó không và họ có thể triển khai tính năng đó như thế nào. lập trình viên nên đề cập đến các frameworks và plugins có thể được tận dụng và cung cấp thông tin chi tiết về các ứng dụng khác có chức năng tương tự.

Các tính năng sáng tạo giúp thỏa mãn nhu cầu người dùng của họ bằng cách sử dụng ứng dụng của bạn và việc tìm một lập trình viên có thể triển khai các tính năng này là điều tối quan trọng.

6) Bạn tập trung vào thiết kế và trải nghiệm người dùng như thế nào ?

Các tính năng dĩ nhiên là rất quan trọng nhưng thiết kế và trải nghiệm về cách người dùng truy cập các tính năng này cũng rất quan trọng đối với sự thành công của ứng dụng của bạn.

Việc làm nổi bật ứng dụng di động của bạn với hơn 3 triệu ứng dụng có sẵn trên tất cả các cửa hàng ứng dụng là rất khó, và thiết kế và trải nghiệm người dùng chính là chìa khóa giúp có thể giúp cho ứng dụng của bạn trở thành một quả trứng vàng trong một giỏ đầy đá sỏi. 

https://thorntech-com-media-cloud.s3.amazonaws.com/2022/03/3883611709_a63f52911f_o.png


Ảnh do Andy Bright cung cấp trên Flickr

Thiết kế đẹp không chỉ dừng lại ở việc sử dụng hình ảnh đẹp và màu sắc tươi sáng. Có hai yếu tố quan trọng để đánh giá một ứng dụng có thiết kế tốt – giao diện người dùng và trải nghiệm người dùng.

Giao diện người dùng (UI) đề cập đến giao diện của ứng dụng. Tất nhiên, điều này rất quan trọng; người dùng mong đợi các ứng dụng sẽ đẹp và được thiết kế tốt. Màu sắc đại diện cho thương hiệu của ứng dụng cần phải đẹp mắt, phông chữ cần phải dễ đọc và các yếu tố cần phải được đặt cách nhau một cách hợp lý. Nói chung là phải đẹp.

Trải nghiệm người dùng (UX) đề cập đến cách ứng dụng đáp ứng nhu cầu của người dùng và cách các tính năng của ứng dụng có thể dễ dàng truy cập và sử dụng.

Một ứng dụng với UX tốt sẽ khiến người dùng nhận thấy giá trị từ ứng dụng của bạn một cách nhanh chóng và dễ dàng.

Dưới đây là những yếu tố chung mà việc thiết kế trải nghiệm người dùng phải đem lại được.

Lập trình viên phù hợp sẽ phải có khả năng kết hợp cả giao diện người dùng đẹp và trải nghiệm người dùng đơn giản, hiệu quả vào ứng dụng của bạn.

Và luôn luôn, điều quan trọng là phải kiểm tra các ứng dụng được phát triển bởi các lập trình viên để chúng ta có thể có được đánh giá sơ bộ về kỹ năng thiết kế của họ.

7) Làm cách nào bạn có thể phát triển được các tính năng kiếm tiền vào ứng dụng của chúng tôi ?

Mặc dù việc kiếm tiền từ ứng dụng có thể không phải là ưu tiên hàng đầu, nhưng Dev của bạn nên biết cách triển khai các tính năng kiếm tiền bất cứ lúc nào mà bạn cần.

Có một số cách kiếm tiền từ ứng dụng di động, bao gồm:

  • Ứng dụng trả phí (trả tiền cho mỗi lần tải xuống)

  • Quảng cáo trong ứng dụng

  • Mô hình Freemium (cung cấp cho khách hàng cả dịch vụ miễn phí và trả phí)

  • In-App-Purchases (mua sản phẩm hoặc dịch vụ từ trong ứng dụng điện thoại)

  • Đăng ký theo kỳ

  • Tài trợ

Hãy xem bài viết này để biết tổng quan về từng mô hình kiếm tiền.

Mỗi mô hình đòi hỏi các phương pháp tích hợp khác nhau.

Nếu ứng dụng của bạn miễn phí và bạn có kế hoạch kiếm tiền từ quảng cáo, hãy đảm bảo rằng Dev của bạn đã quen thuộc với các mạng quảng cáo di động như AdMob (một phần của Google), Millennial Media (hiện là một phần của AOL) và các mạng khác.

Nếu bạn muốn kết hợp mua hàng trong ứng dụng, nhà phát triển của bạn sẽ phải nắm rõ các công nghệ cần thiết để thực hiện điều này và  lượng người dùng cần thiết để tối ưu hóa việc chuyển đổi.

Nếu việc kiếm tiền từ ứng dụng di động rất quan trọng đối với bạn, hãy đảm bảo lập trình viên của bạn hiểu rõ về những cách thức để làm được điều này.

Mobile app monetization

 

Quy trình phát triển

8) Chúng ta sẽ giao tiếp và trao đổi các vấn đề trong quá trình phát triển như thế nào ?  

Giao tiếp trong quá trình phát triển hoàn toàn quan trọng vì nó ảnh hưởng đến chất lượng của ứng dụng, vì vậy hãy chắc chắn rằng bạn nắm rõ cách lập trình viên sẽ tương tác với bạn ngay từ ngày đầu tiên.

Bạn cần một lập trình viên nắm rõ mô hình phát triển nhanh (agile development), giao tiếp liên tục, thu thập phản hồi và lặp đi lặp lại.

Như chúng ta đều biết, mọi thứ có thể thay đổi rất nhanh, và phát triển phần mềm cũng không khác gì.

Đó là lý do tại sao tốt nhất bạn nên làm việc với lập trình viên hiểu rõ được điều này để bạn và các bên liên quan khác cung cấp phản hồi sớm và thường xuyên để xác định và xử lý các rào cản tiềm ẩn càng sớm càng tốt.

Mọi thứ bắt đầu với các giai đoạn Discovery (tìm hiểu) và Design (thiết kế).

Trong giai đoạn Tìm hiểu, bạn và lập trình viên của bạn sẽ cùng nhau thống nhất về các tính năng và chức năng của ứng dụng.

Sau đó, trong giai đoạn Thiết kế, bạn và lập trình viên sẽ làm việc cùng nhau để tạo ra các “mạng lưới” và mô hình đại diện cho ứng dụng, nó có thể trông như thế nào và giữ lại tất cả các tính năng nói trên trong tâm trí.

Chỉ khi các thiết kế được phê duyệt, việc phát triển ứng dụng mới bắt đầu.

Các lần trao đổi tiếp theo trong quá trình phát triển phải tiếp tục có sự nhất quán.

Nhiều lập trình viên sẽ sử dụng các công cụ quản lý dự án như Jira, Trello, Asana, Basecamp và các công cụ khác để theo dõi tiến độ dự án. Bất kể công cụ nào được sử dụng, phản hồi cần được kết hợp đầy đủ vào quy trình để đảm bảo dự án đang đi đúng hướng.

Các cuộc họp hàng tuần hoặc hai tuần nên được lên lịch để cung cấp cập nhật trạng thái và xác định bất kỳ vấn đề nào có thể phát sinh.

Nếu cần thiết phải phát sinh bất kỳ tính năng hoặc chức năng bổ sung nào đó, phải có được một mức độ cố gắng (Level-Of-Effort) để làm rõ việc nó sẽ có đến tác động tài chính và thời gian như thế nào đối với việc xây dựng tính năng mới đó cho dự án.

Bạn cũng nên xem xét việc lập trình viên có đang làm việc từ xa hay không và sự khác biệt về múi giờ có thể ảnh hưởng như thế nào đến việc giao tiếp và tính khả dụng chung của đối tác phát triển của bạn.

Mỗi dự án sẽ có các mức độ giao tiếp khác nhau, nhưng việc đảm bảo rằng bạn và lập trình viên của bạn có các tiêu chí giao tiếp chung là rất quan trọng.

9) Bạn sẽ kiểm thử ứng dụng như thế nào ?

Không điều gì tệ hơn khi bạn chạy thử ứng dụng với một loạt các lỗi và các tính năng bị hỏng. Bạn và lập trình viên của bạn phải luôn phối hợp để đảm bảo rằng ứng dụng của bạn hoạt động và hoạt động đúng theo cách bạn hình dung.

Ứng dụng của bạn nên được thử nghiệm khi đang được phát triển. Nếu nhà phát triển của bạn làm việc theo mô hình Agile (theo câu hỏi số 8 ở trên), họ sẽ cung cấp cho bạn các phiên bản thử nghiệm của ứng dụng trong suốt quá trình phát triển để bạn có thể xác minh các tính năng đang được tạo.

Thử nghiệm sẽ diễn ra trên điện thoại di động mà ứng dụng đang được xây dựng.

Nếu ứng dụng của bạn đang được phát triển cho iOS, sẽ khá dễ dàng để thử nghiệm nó trên một vài phiên bản cũ của iPhone như 6S và 6S Plus, 6 và 6 Plus, SE, 5S và 5.

Nếu ứng dụng của bạn đang được xây dựng cho Android, nó có thể sẽ khó kiểm tra hơn một chút, vì có rất nhiều điện thoại và phiên bản Android khác nhau. Bạn sẽ không cần phải thử nghiệm ứng dụng của mình trên mọi thiết bị hoặc phiên bản Android, nhưng một lượng lớn thử nghiệm sẽ hữu ích để “đánh hơi” được bất kỳ lỗi nào hoặc trải nghiệm người dùng kém.

Việc đưa ứng dụng của bạn đến tay người dùng tiềm năng thông qua các nhóm tập trung hoặc “thử nghiệm hành lang” cũng rất quan trọng.

Bạn và lập trình viên của bạn sẽ cùng tham gia vào việc tạo ứng dụng để có thể nhìn thấy những khiếm khuyết của nó. Vì vậy, quan điểm của người ngoài sẽ cực kỳ có giá trị để xác định các cải tiến tiềm năng và các tính năng bị hỏng.

Các công cụ và trang thử nghiệm người dùng, Perfecto Mobile và Device Anywhere cũng có thể giúp hợp lý hóa quá trình thử nghiệm.

Các nhà phát triển ứng dụng có thể có các tiêu chí khác nhau về thử nghiệm, vì vậy hãy đảm bảo rằng bạn tuân thủ các phương pháp thử nghiệm và mức độ thử nghiệm ứng dụng của bạn.

10) Bạn sẽ gửi ứng dụng di động của tôi cho các cửa hàng ứng dụng và ứng dụng sẽ có tên của ai?

Sau khi thử nghiệm, bước cuối cùng của quy trình khởi chạy là gửi ứng dụng của bạn đến các cửa hàng ứng dụng tương ứng, chẳng hạn như Apple App Store và Google Play. Ứng dụng của bạn sắp sửa được lên sóng!

Việc gửi các ứng dụng đến các cửa hàng này có thể là một nỗ lực lâu dài và khó khăn (đặc biệt là đối với Apple App Store), nhưng lập trình viên của bạn nên biết rõ quy trình và có thể hướng dẫn bạn trong suốt quá trình.

Tuy nhiên, điều quan trọng là bạn phải có được đăng ký Chương trình Nhà phát triển Apple của riêng mình, tài khoản nhà phát triển Google Play và tài khoản của riêng bạn cho các cửa hàng ứng dụng khác và có ứng dụng được gửi dưới tài khoản của bạn.

Đã có những tình huống khi nhà phát triển ứng dụng hoặc công ty phát triển gửi ứng dụng của khách hàng đến các cửa hàng ứng dụng dưới tên của họ. Bạn hoàn toàn không nên để điều này xảy ra vì khi Dev của bạn không còn làm việc cho bạn nữa, thì bạn sẽ không có quyền truy cập vào ứng dụng của mình vì các cửa hàng ứng dụng sẽ không biết rằng đó là ứng dụng của bạn.

Bạn sẽ không thể phát hành phiên bản mới vì bạn sẽ không có quyền truy cập vào tài khoản. Bạn về cơ bản sẽ phải bắt đầu lại và phát hành lại một ứng dụng hoàn toàn mới cho các cửa hàng dưới một tài khoản khác và bằng cách nào đó thuyết phục người dùng của bạn tải xuống phiên bản mới và đó là một việc không hay ho cho lắm.

Do đó, điều rất quan trọng là bạn phải chi tiền để có được tài khoản cửa hàng ứng dụng của riêng mình để ứng dụng có thể được phát hành trong tài khoản của bạn.

Vì vậy, mặc dù lập trình viên sẽ giúp hướng dẫn bạn trong quá trình gửi, nhưng bắt buộc mọi thứ phải được gửi trong tài khoản của bạn.

11) Bạn có duy trì ứng dụng sau khi nó được khởi chạy không?

Thật tuyệt vời khi ứng dụng của bạn được phê duyệt và ra mắt trên các cửa hàng ứng dụng, nhưng mọi thứ vẫn chưa xong.

Để có được người dùng mới và thu hút người dùng hiện tại tham gia, bạn sẽ phải cập nhật các bản sửa lỗi (luôn có lỗi), kiểm tra các phiên bản cập nhật của hệ điều hành và liên tục cải thiện các tính năng và chức năng của ứng dụng.

Vì vậy, bạn nên trao đổi với Dev về cách họ xây dựng một cấu trúc chương trình để dễ dàng bảo trì và hỗ trợ và giải quyết những thay đổi trong tương lai cần thiết đối với ứng dụng di động của bạn.

Đôi khi chỉ đơn giản là “tính phí theo giờ” cho thời gian thực hiện các chỉnh sửa đặc biệt cho ứng dụng.

Hoặc đôi khi quy trình chỉnh sửa phải mất đến hàng tháng liên tục, trong đó phải dành ra rất nhiều thời gian để bảo dưỡng và duy trì ứng dụng di động của bạn với một khoản phí hàng tháng.

Hãy thương lượng một mức giá phù hợp với cả hai bên để đảm bảo ứng dụng của bạn được duy trì đúng cách.

Pháp chế và Quản trị

12) Ai sẽ sở hữu ứng dụng di động?

Bạn là người trả tiền mà ? đúng không ? Vậy thì bạn nên toàn quyền sở hữu nó.

Việc phát triển phần mềm của bên thứ ba thường được tạo theo tiêu chuẩn (thuận mua vừa bán) “Work Made for Hire” (bản tải xuống pdf), trong đó bạn, với tư cách là người mua dịch vụ, sở hữu thiết kế và code của ứng dụng do Developer tạo ra. Vì vậy, hãy chắc chắn rằng trong hợp đồng của bạn nêu rõ điều này.

Ngoài ra, nhiều nhà phát triển bao gồm các điều khoản nói rằng họ có "quyền đối với các tác phẩm phái sinh", điều này có lợi cho cả bạn và nhà phát triển.

Theo LegalZoom, một tác phẩm phái sinh là một sản phẩm mới, bao gồm các khía cạnh của một tác phẩm đã có sẵn, đã có bản quyền. Trong trường hợp này, ứng dụng di động của bạn có thể bao gồm các tính năng và chức năng đã được triển khai trong các ứng dụng di động khác.

Có rất nhiều tính năng trong một ứng dụng di động rất phổ biến trong nhiều ứng dụng. Thông thường các nhà phát triển ứng dụng xây dựng cùng một phần chức năng nhiều lần (ví dụ: vuốt xuống để làm mới, luồng đăng nhập của người dùng và các chức năng khác).

Với điều khoản sản phẩm phái sinh, các nhà phát triển có thể tái sử dụng rất nhiều tính năng phổ biến mà họ có thể đã phát triển trước đó trên các dự án khác, điều này làm giảm chi phí của dự án và rủi ro cho bạn.

Các thuật toán độc quyền hoặc tài sản trí tuệ cụ thể sẽ không được sử dụng lại, nhưng các tính năng và chức năng đơn giản có thể được tái áp dụng trong các dự án trong tương lai.

Vấn đề pháp lý đôi khi có thể khá rắc rối, vì vậy chỉ cần đảm bảo rằng Developer đang thực hiện “Work Made for Hire” và để mắt đến những gì được coi là hoạt động phái sinh.

13) Mức chi phí mong muốn và điều khoản thanh toán của bạn yêu cầu là gì?

Mức lương và điều khoản thanh toán đôi khi có thể được ẩn giấu trong các thuật ngữ pháp lý của Bản kê khai Công việc hoặc Thỏa thuận Dịch vụ, vì vậy hãy chắc chắn rằng cả bạn và lập trình viên của bạn đều đồng ý về điều này.

Tất nhiên, điều đầu tiên bạn sẽ muốn biết là toàn bộ dự án phát triển ứng dụng di động có thể tốn bao nhiêu. Nhưng ngoài ra cần quan tâm cách mà Developer tính phí cho bạn và thời điểm bạn cần trả phí.

Về chi phí của dự án, có hai cấu trúc định giá chính – chi phí theo giờ và chi phí cố định.

Với định giá theo giờ, nhà phát triển tính phí cho mỗi giờ làm việc (có thể dao động từ 20-200 USD trở lên mỗi giờ, tùy thuộc vào kinh nghiệm và cân nhắc địa lý) và lượng thời gian dành cho dự án của bạn.

Trong quá trình đề xuất, lập trình viên sẽ ước tính số giờ mà họ tin rằng dự án sẽ mất, nhưng sẽ tính phí cho bạn cho mỗi giờ làm việc cho dù tổng thời gian đó thấp hơn hoặc cao hơn ước tính.

Trong một dự án giá cố định, lập trình viên sẽ cung cấp cho bạn tổng chi phí của dự án trước và “hy vọng” có thể đến gần với con số đó nhất có thể.

Nếu các trường hợp bất ngờ phát sinh và công việc bổ sung vượt quá phạm vi ban đầu là cần thiết, lập trình viên nên trao đổi với bạn về chi phí công việc bổ sung đó trước khi tiếp tục.

Điều khoản thanh toán sẽ khác nhau tùy theo từng nhà phát triển.

Những người tính phí theo giờ có thể yêu cầu được trả lương hai tuần một lần hoặc hàng tháng.

Các nhà phát triển tính phí thông qua chi phí cố định có thể yêu cầu một khoản tiền gửi bằng 30-50% tổng chi phí dự án trả trước, với số dư đến hạn sau khi giao dự án. Những người khác có thể chấp nhận được thanh toán sau khi công việc hoàn thành.

Hãy cẩn thận với những người yêu cầu trả trước toàn bộ dự án, vì sẽ khá phiền phức nếu công việc của Developer không đáp ứng được tiêu chuẩn của bạn.

Hãy chắc chắn bạn xem đã Bản kê khai Công việc hoặc đề xuất của lập trình viên và đặt câu hỏi này để bạn có thể đi đến một thỏa thuận về chi phí và cơ cấu thanh toán một cách hiệu quả.

Kết luận

Ứng dụng di động mang tầm quan trọng rất lớn nó có thể giúp bạn phát triển doanh nghiệp hiện tại của mình hoặc thậm chí phát triển một doanh nghiệp mới.

Việc tìm kiếm lập trình viên phù hợp là rất quan trọng, nhưng không dễ dàng.

Hãy chắc chắn rằng bạn dành thời gian để tìm một lập trình viên có kinh nghiệm và năng lực phù hợp với ứng dụng bạn cần xây dựng, giao tiếp tốt và có cấu trúc pháp lý và chi phí phù hợp với bạn.

Và đặt đúng câu hỏi là một phần quan trọng của quá trình tìm kiếm này.