Tải bản đầy đủ (.docx) (44 trang)

báo cáo thực tập front end developer

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.76 MB, 44 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN</b>

<b>KHOA CÔNG NGHỆ PHẦN MỀM</b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

LỜI MỞ ĐẦU...1

Chương 1. Giới thiệu về công ty đang thực tập...3

1. 1 Khái qt về cơng ty 8xLand...3

1.2 Q trình hình thành và phát triển...4

Chương 2. Ngơn ngữ lập trình Flutter...5

2.1 Flutter là gì?...5

2.2 Đặc điểm nổi bật...5

2.3 Lý do bản thân chọn chuyên đề với Flutter để thực tập...5

Chương 3. Nội dung thực tập...6

3.1 Quy trình thực tập và cơng việc thực tế nơi đang thực tập...6

3.2 Nghiệp vụ chuyên mơn...8

Chương 4. Các cơng việc đã làm trong q trình thực tập...12

4.8 Component bottom sheet đặt lịch...20

4.9 Màn hình chọn chuyên viên tại nhà...21

4.10 Màn hình danh sách chọn chuyên viên tại nhà...21

4.11 Màn hình địa chỉ cá nhân...23

4.12 Màn hình thiết lập tài khoản...24

4.13 Màn hình hỗ trợ...25

4.14 Màn hình nhật ký hoạt động...26

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

4.15 Lịch làm việc cụ thể...27

4.16 Tổng kết các phần bản thân đã làm...29

Chương 5. Tự đánh giá và nhận xét thực tập...31

Nhận thức của bản thân sau thời gian tìm hiểu và tham gia thực tập tại đơn vị...31

Học hỏi từ các quy định nơi thực tập...32

KẾT LUẬN...33

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>LỜI MỞ ĐẦU</b>

Kính gửi Ban giám hiệu, Ban chủ nhiệm khoa, và các giảng viên hướng dẫn,

Tôi xin trân trọng gửi đến quý vị báo cáo thực tập doanh nghiệp của mình, với vai trị là Front-end Developer. Báo cáo này là kết quả của quá trình thực tập tại công ty R2S trong khoảng thời gian từ tháng 6 đến tháng 9 năm 2023.

Trong báo cáo này, tôi sẽ trình bày về nội dung cơng việc và kinh nghiệm của mình trong vai trị Front-end Dev tại cơng ty R2S. Báo cáo bao gồm các phân tích, đánh giá, và khuyến nghị liên quan đến các dự án và quy trình kinh doanh mà tơi đã tham gia.

Trước khi bước vào chi tiết, tôi xin được giới thiệu về vai trị Front-end mà tơi đã đảm nhiệm trong thời gian thực tập. Front-end dev là người chịu trách nhiệm phân tích và đánhgiá các yêu cầu của UI/UX, dự án, và hệ thống của công ty để tạo ra các giải pháp cải tiếnvà đáp ứng nhu cầu kinh doanh. Công việc của tôi bao gồm thu thập và phân tích phát triển giao diện người dùng (UI), tương tác với Back-end, tham gia vào quy trình thiết kế hệ thống, tối ưu hóa hiệu suất, kiểm thử và sửa lỗi, và hiểu biết về UI/UX Design.

Trải qua thời gian thực tập tại cơng ty R2S, tơi đã có cơ hội áp dụng kiến thức và kỹ năng đã học được trong quá trình đào tạo đại học vào công việc thực tế. Qua sự hướng dẫn và hỗ trợ từ các giảng viên hướng dẫn và đồng nghiệp, tơi đã trải qua một q trình học tập và trưởng thành đáng giá.

Trong báo cáo này, tơi sẽ trình bày về các dự án và nhiệm vụ cụ thể mà tơi đã tham gia, các phân tích và kết quả tìm hiểu được, cũng như đóng góp và những khó khăn mà tơi đã trải qua trong q trình làm việc. Bên cạnh đó, tơi cũng sẽ đưa ra những khuyến nghị và phương hướng phát triển trong tương lai.

Tôi mong rằng báo cáo này sẽ giúp các quý vị có cái nhìn tổng quan về vai trị Front-end dev và khả năng của tôi trong việc áp dụng kiến thức và kỹ năng trong môi trường thực tế.

Trang 1

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

Tôi xin chân thành cảm ơn sự hỗ trợ và định hướng từ Ban giám hiệu, Ban chủ nhiệm khoa, và các giảng viên hướng dẫn trong suốt q trình thực tập.

Trân trọng,Vũ Khánh Hồng

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>Chương 1.Giới thiệu về công ty đang thực tập1. 1 Khái quát về công ty R2S</b>

<i>Thông tin chung của công ty</i>

 Loại công ty: Công Ty Trách Nhiệm Hữu Hạn và dịch vụ Tên công ty: R2S

 Logo công ty:

<i>Đặc điểm sản xuất kinh doanh</i>

<i>Đào tạo nhân sự làm được việc ngay cho doanh nghiệp (Resource)Phát triển phần mềm (Software)</i>

<i>Tư vấn giải pháp CNTT cho các doanh nghiệp thực hiện chuyển đổi số(Solution)Các loại hình bất động sản được 8xLand cung cấp</i>

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Kết nối công nghệ - Nâng tầm thịnh vượng.

Tạo ra công cụ hỗ trợ đắc lực đồng hành cùng môi giới đạt được thành công trong sự nghiệp.

Xây dựng hệ thống quản lý thơng minh với: Quy trình xử lí tự động, khép kín.Nền tảng giúp kết nối, đưa nhân lực Việt Nam vươn tầm thế giới.

<b>1.2 Quá trình hình thành và phát triển</b>

R2S ra đời vào ngày một tháng tám năm 2019 với nhiệm vụ đào tạo nhân sự CNTT cho doanh nghiệp, phát triển phần mềm và tư vấn giải pháp CNTT. Đội ngũ sáng lập có anh Lê Hồng Kỳ và hiện tại anh là Giám đốc R2S. Để mọi người hiểu nhiều hơn về R2S Academy nói riêng và R2S nói chung, hơm nay chúng ta cùng nghe hành trình sáng lập R2S từ anh Lê Hồng Kỳ nhé!

Mình tốt nghiệp Đại học ngành CNTT cuối năm 2006. Ngay sau khi ra trường, mình có 6 tháng học sỹ quan dự bị tại Trường sỹ quan quân sự quân khu 7. Sau khi học xong sỹ quan với quân hàm thiếu uý, một số người xin ở lại phục vụ qn đội, riêng mình thì chọnđi làm ngồi. Cơng ty đầu tiên mình tham gia với vị trí lập trình viên. Tại đây, mình có nhiệm vụ chuyển đổi phần mềm đang sử dụng viết bằng Visual Fox Pro sang sử dụng SQL Server. Làm ở đây được 3 tháng và nhận thấy mình khơng phù hợp với mơi trường này, nên mình đã dũng cảm xin nghĩ và đầu quân cho Fujinet – Một công ty làm Out-sourcing cho Nhật Bản. Ở đây mình được làm cơng việc đúng sở trường của mình đó là lập trình viên Java cho một ứng dụng quản lý truyền hình cab ở Nhật Bản.

Gần 3 năm làm việc cho những dự án của Nhật thì vào cuối tháng 4 năm 2010, mình quyết định chuyển sang đi dạy tại trường Cao đẳng CNTT iSPACE thông qua một người bạn thời đại học giới thiệu. Đây chính là thời điểm Kỳ chuyển từ lập trình viên sang giảngviên. Và để có thể đứng lớp truyền đạt kiến thức, kỹ năng, kinh nghiệm thời làm việc cho sinh viên, Kỳ phải tham gia một khoá học 6 tháng tại trường Đại học sư phạm TPHCM đểlấy chứng chỉ sư phạm. Đây xem như là giấy thông hành để Kỳ bắt đầu đi dạy. Cũng trong thời gian làm việc tại iSPACE, thông qua người sếp Kỳ đã teaching demo thành công và bắt đầu đi dạy thêm buổi tối tại FPT Aptech (Từ 12/2015 đến 05/2018).

Trong thời gian mình dạy tại FPT Aptech, với đặc thù có nhiều người đang đi làm, học trái ngành tham gia lớp học nên mình có cơ hội gặp một học viên rất đặc biệt. Bởi vì học viên ấy là học viên lớn tuổi nhất (55 tuổi) và đang là Giám đốc Cảng vụ tại TPHCM. Và khơng biết cơ dun gì, mình được chính học trị của mình mời về làm Trưởng ban CNTT

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

& QLDL với nhiệm vụ quản lý CNTT cho Cảng vụ và 13 đại diện thuộc Cảng vụ ở các tỉnh miền Tây. Kỳ làm việc tại đây được 2 năm trước khi chuyển sang làm Trainer cho FPT Software khu vực HCM.

Phỏng vấn đầu vào đối tượng ứng tuyển Fresher, trực tiếp đào tạo và đánh giá các bạn Fresher là cơng việc chính. Bên cạnh đó mình cịn được giao nhiệm vụ đi chia sẻ cho hàng ngàn sinh viên các trường Đại học lớn nhỏ ở HCM. Kỳ nói cho sinh viên biết những vị trí cơng việc mà doanh nghiệp cần. Kỳ nói cho sinh viên biết cần trang bị những kiến thức, kỹ năng gì trước khi đi tìm việc,… Trong thời gian 3 năm làm việc tại FPT Soft-ware, Kỳ đã đào tạo hơn 600 Fresher, gặp gỡ và phỏng vấn hàng ngàn sinh viên. Và mình trăn trở, làm cách nào giúp sinh viên tiếp cận sớm nhất (Có thể ngay năm nhất) những yêucầu từ doanh nghiệp để giải quyết một thực trạng rất buồn đó là sinh viên thất nghiệp, doanh nghiệp thì thiếu người.

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<b>Chương 2.Ngơn ngữ React NaTive2.1 React Native là gì?</b>

 React Native là một framework (khung công việc) mã nguồn mở được phát triểnbởi Facebook, giúp xây dựng ứng dụng di động đa nền tảng (cross-platform). Nó sử dụng ngơn ngữ lập trình JavaScript và React để phát triển ứng dụng cho cả iOS và Android.

 React Native được thiết kế để giảm bớt sự phức tạp của việc phát triển di động bằng cách cho phép các nhà phát triển sử dụng một lượng lớn mã nguồn chung giữa các nền tảng khác nhau. Một điểm mạnh của React Native là khả năng tái sử dụng component giữa các dự án, giảm đáng kể thời gian và công sức khi pháttriển cho cả iOS và Android.

<b>2.2 Đặc điểm nổi bật</b>

 JavaScript và React: Sử dụng JavaScript, một ngôn ngữ lập trình phổ biến và dễ tiếp cận, cùng với React, một thư viện JavaScript phổ biến cho việc xây dựng giao diện người dùng.

 Tương thích Cross-platform: Cho phép việc phát triển ứng dụng di động chung cho cả iOS và Android, giảm thiểu cần phải viết mã nguồn từ đầu cho mỗi nền tảng.

 Hot Reloading: Cho phép nhà phát triển thấy ngay các thay đổi trong ứng dụng mà khơng cần phải rebuild tồn bộ.

 Community mạnh mẽ: React Native có một cộng đồng lớn, nhiều nguồn tài nguyên và thư viện hỗ trợ.

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

 React Native đã trở thành một lựa chọn phổ biến cho việc phát triển ứng dụng diđộng, đặc biệt là khi cần tối ưu hóa sự tái sử dụng mã nguồn và giảm thời gian phát triển đối với cả hai nền tảng iOS và Android.

<b>2.3 Lý do bản thân chọn chuyên đề với BA để thực tập</b>

 Hiểu Biết Toàn Diện về Doanh Nghiệp: Làm việc với BA giúp bạn hiểu rõ hơn về hoạt động của doanh nghiệp. Bạn có cơ hội nắm bắt kiến thức vững về các quy trình kinh doanh, mơ hình hoạt động, và yêu cầu của khách hàng.

 Phát Triển Kỹ Năng Phân Tích: Trong q trình thực tập với BA, bạn sẽ phát triển kỹ năng phân tích thơng tin, làm rõ yêu cầu của dự án, và tìm hiểu cách dự án ảnh hưởng đến các phần khác nhau trong doanh nghiệp.

 Giao Tiếp và Tương Tác: BA thường phải làm việc với nhiều bên liên quan, baogồm khách hàng, nhóm phát triển, và bên quản lý dự án. Thực tập với BA có thểgiúp bạn phát triển kỹ năng giao tiếp và tương tác xã hội.

 Cơ Hội Nắm Bắt Cơng Nghệ và Quy Trình: Trong q trình làm việc với BA, bạn có thể học được cách kết hợp cơng nghệ vào quy trình kinh doanh. Điều nàycó thể cung cấp cái nhìn chi tiết về cách cơng nghệ có thể giúp cải thiện hiệu suất và quy trình cơng việc.

 Chuẩn Bị cho Sự Nghiệp Tương Lai: Một sự hiểu biết sâu sắc về doanh nghiệp và quy trình làm việc có thể là một lợi thế lớn khi bạn bắt đầu sự nghiệp của mình, đặc biệt là nếu bạn quan tâm đến quản lý dự án, quản lý kinh doanh, hoặc quản lý sản phẩm.

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b>Chương 3.Nội dung thực tập</b>

<b> 3.1 Quy trình thực tập và cơng việc thực tế nơi đang thực tập</b>

 Hiểu yêu cầu kinh doanh: Đầu tiên, phải hiểu rõ yêu cầu kinh doanh của dự án. Điều này bao gồm tìm hiểu về mục tiêu, ngữ cảnh, các vấn đề và nhu cầu của doanh nghiệp. Có thể tương tác với các bên liên quan như khách hàng, người sử dụng cuối và các chuyên gia lĩnh vực để thu thập thông tin chi tiết.

 Phân tích u cầu: Sau khi thu thập thơng tin, tiến hành phân tích u cầu. Q trình này bao gồm phân loại, phân tích và phát triển yêu cầu thành các tài liệu vàmơ hình phù hợp.

 Xây dựng mơ hình: Sử dụng các biểu đồ và mơ hình hóa để mơ tả hệ thống hoặcquy trình. Các biểu đồ phổ biến như biểu đồ lớp, biểu đồ use case, biểu đồ hoạt động và biểu đồ trạng thái được sử dụng để hiển thị cấu trúc và luồng làm việc của hệ thống.

 Xác nhận yêu cầu: Phối hợp với các bên liên quan để xác nhận yêu cầu đã phân tích. Điều này đảm bảo rằng các yêu cầu đã hiểu đúng và đủ để tiến hành phát triển. Sự xác nhận có thể thơng qua cuộc họp, gặp gỡ và sự thống nhất giữa các bên liên quan.

 Lập kế hoạch và thiết kế: Dựa trên yêu cầu đã được xác nhận, tham gia vào quá trình lập kế hoạch và thiết kế. Điều này bao gồm việc tạo ra tài liệu thiết kế chi tiết, định nghĩa quy trình cơng việc và xác định các tài nguyên cần thiết cho dự án.

 Giao tiếp và tương tác: Liên tục tương tác với các bên liên quan trong suốt q trình dự án. Cung cấp thơng tin, giải thích u cầu và mơ hình, thu thập phản hồi và làm việc với đội phát triển để đảm bảo sự hiểu rõ và đồng thuận về yêu cầu và thiết kế.

 Kiểm tra và phê duyệt: Tham gia vào quá trình kiểm tra và phê duyệt để đảm bảo rằng sản phẩm hoặc giải pháp đáp ứng yêu cầu và đạt được mục tiêu kinh doanh. Họ kiểm tra chất lượng, thực hiện kiểm thử và theo dõi hiệu suất để đảm bảo sự hoạt động đúng như mong đợi.

 Hỗ trợ triển khai: BA có thể tham gia vào quá trình triển khai, hỗ trợ việc triển khai giải pháp và đảm bảo rằng yêu cầu và thiết kế đã được thực hiện chính xác.

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

Bên dưới là sơ đồ mơ tả quy trình làm việc tại bộ phận của em tại công ty

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<i>Những kiến thức đã được học tại công ty</i>

 Kỹ năng tổ chức công việc thông qua các ứng dụng Trello, Github, Zalo,Drawio, Lark,...

 Kỹ năng lập kế hoạch với bản thân để có thể hồn thành nhiệm vụ của mình đúng thời gian quy định.

 Kiến thức chuyên ngành vững chắc hơn. Phối hợp cơng việc với các nhóm.

 Ngồi ra cịn được nâng cao kỹ năng giao tiếp, thuyết trình, khả năng giải quyết vấn đề.

<b>3.2 Nghiệp vụ chuyên môn.</b>

Hiện tại công ty chia thành các đội trong công ty: marketing, sales, thiết kế, phát triển ứng dụng. Mỗi đội là một phòng ban được chia làm công việc với nhau.

Công ty đang phát triển chủ yếu là về lập trình web và mobile, nhưng cũng đang mở rộng như đang chuẩn bị thực hiện mở rộng thêm về lĩnh vực đào tạo nhân lực, marketing.

Về chuyên ngành phát triển của FE, thực hiện thiết kế ứng dụng và các chức năng theo như yêu cầu của đội thiết kế. Chỉnh sửa lại các phần chưa được tối ưu và còn hạn chế của ứng dụng. Giám sát bảo trì ứng dụng theo thời gian và nâng cấp.

Trưởng nhóm sẽ nhận các yêu cầu từ các ban lãnh đạo hay thiết kế để đưa ra nhiệm vụ mỗi ngày cho các thành viên trong nhóm. Vào mỗi buổi sáng sẽ có báo cáo công việc cũng như xem xét tiến độ của mỗi thành viên như thế nào. Đưa ra các giải pháp tối ưu cũng như quản lý hệ thống bên sever. Lập kế hoạch để họp với các nhóm mỗi tuần để có thể thống nhất ý kiến và làm cơng việc dễ dàng hơn.

Các thành viên trong nhóm bao gồm nhân viên chính thức cũng như thực tập sinh, sẽ báo cáo cơng việc mình làm mỗi ngày, với sự hướng dẫn của trưởng nhóm để phát triển các giao diện, chức năng của ứng dụng. Mỗi khi một nhiệm vụ hoàn thành, sẽ báo cáo trên ứng dụng Trello và GitHub để trưởng nhóm có thể dễ dàng quản lý và đưa ra kế hoạch phù hợp hơn. Rồi sau đó trưởng nhóm sẽ tự mình kiểm thử chức năng đó, nếu ổn thì đưa cho nhóm QC để kiểm tra lần cuối. Mỗi chức năng đều thực hiện như vậy, trong q trình QC nếu lỗi đó liên quan đến bản thân thì phải tự mình giải quyết vấn đề đó. Trong trường hợp nó quá khó khăn thì có thể u cầu lại với nhóm thiết kế thực hiện theo vấn đề đó một cách dễ dàng hơn. Cũng như vậy mỗi khi đội thiết kế đưa ra giao diện của

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

ứng dụng khơng phù hợp hay khơng hợp lý, thì bản thân có thể thảo luận với đội thiết kế để có thể thảo luận về vấn đề này để phát triển một cách tốt hơn.

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

 Ở hình báo cáo GitHub này trưởng nhóm sẽ tạo các vấn đề mình sẽ cần phải làm, các nhân viên lựa chọn nhiệm vụ phù hợp với mình để thực hiện. Khi vừa nhận thì sẽ dán nhãn là đang thực hiện, khi thực hiện xong sẽ là nhãn đã hồn thành.

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

 Phần dưới sẽ mơ tả chi tiết về công việc thông qua các yêu cầu có sẵn, và đính kém theo với hình ảnh để em hiểu rõ một cách trực quan hơn. Nếu khơng hiểu gì thì có thể liên hệ với trưởng nhóm để tìm hiểu thêm.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

 Trello là ứng dụng quản lý công việc khá phổ biến trong thời gian này. Các task được chia ra các phần: chức năng phụ, chức năng, cụm chức năng, thực hiện sau, đang thực hiện, đã hoàn thành, đã review.

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b>Chương 4.Các công việc đã làm trong quá trình thực tập4.1 Màn hình Home:</b>

 Được thiết kế từ đội thiết kế với ứng dụng Figma. Cách được thực hiện là xây dựng các tab view cho phép có thể chuyển qua loại cơ sở, cách xây dựng các commponents và navigate. Tối ưu hiệu xuất của flatlist với flashlist và sử dụng memo để tránh bị re-render Với mỗi loại components sẽ có một chức năng riêng. Riêng phần màn hình Home này dùng để hiển thị các thông tin về các loạibảo hiểm cũng như các thẻ bảo hiểm nổi bật, navigate tới các trang thông báo cũng như các trang để đặt bảo hiểm nhanh.

<b>4.2 Màn hình tin tức</b>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

 Cũng được dựa trên Figma ở đây sẽ hiển thị danh sách các tin tức. Tại màn hìnhnày cũng cho phép người dùng nhấn xem cũng như like, navigate tới các trang bình luận để bình luận tin tức tức

<b>4.3 Màn hình tài khoản</b>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

 Các tính năng cũng được thiết kế như hai màn hình u thích trên, nhưng màn hình này dùng để navigation tới các màn khác để thực hiện yêu cầu chỉnh sửa tàikhoản cũng như các thông tin về công ty.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<b>4.4 Màn hình chỉnh sửa thơng tin tài khoản</b>

 Ở màn hình này giúp cho người dùng có thể cập nhật mới thông tin cho tài khoản hiện dùng.

</div>

×