Fury Road: Hành trình của nhà phát triển thanh toán

Người quản lý của một công ty phát triển thanh toán có hai cách để xây dựng nhóm. Đầu tiên là tuyển dụng những “tiền bối” đã có sẵn và liên tục tạo điều kiện làm việc để họ phát huy tối đa kỹ năng, kinh nghiệm của mình, phát triển, đồng thời không gây gổ. Thứ hai là tạo ra một nhóm từ sự kết hợp của những người mới, người tầm trung và người chuyên nghiệp, để họ giao tiếp, ảnh hưởng lẫn nhau, học hỏi và phát triển trong công ty. Tôi chống lại cái vòng luẩn quẩn “không có kinh nghiệm - không có việc làm - không có kinh nghiệm” và tôi không thấy có vấn đề gì khi thuê một nhà phát triển mới bắt đầu. Forward Telecom từ lâu đã có chương trình thực tập, trở thành bàn đạp nghề nghiệp cho nhiều nhân viên hiện nay.

Bây giờ tôi sẽ cho bạn biết cách tôi nhìn nhận con đường phát triển của một nhà phát triển thanh toán và trình tự bạn cần để thành thạo các kỹ năng chuyên nghiệp.

1. Học ngôn ngữ lập trình

Để bắt đầu, bất cứ ai. Ưu tiên là Java, Python và JavaScript nhưng Ruby, Go, C, C++ phù hợp để tiếp thu kiến ​​thức cơ bản. Dạy thế nào? Tham gia các khóa học trả phí và miễn phí; Tôi có thể giới thiệu khóa đào tạo từ Golang. Nếu trình độ tiếng Anh của bạn cho phép, xem video nước ngoài là một kỹ năng bổ sung tốt.

Fury Road: Hành trình của nhà phát triển thanh toán

2. Hiểu khái niệm hệ điều hành

Hệ điều hành dựa trên bảy thành phần mà bạn cần biết và có thể giải thích nguyên tắc hoạt động:

  • Quản lý quy trình;
  • Chủ đề và mã đa luồng;
  • Ổ cắm (giao diện phần mềm);
  • Điều phối I/O;
  • Ảo hóa;
  • Kho;
  • Hệ thống tập tin.

Tôi khuyên bạn nên tham gia một khóa học quản trị Linux cơ bản. Hệ điều hành thứ hai là Windows và Unix.

3. Làm quen với thiết bị đầu cuối

Tương tự với nỗi ám ảnh về một tờ giấy trắng, có nỗi ám ảnh về một màn hình đen trống rỗng với con trỏ nhấp nháy. Bạn sẽ phải vượt qua nó để học cách viết lệnh tốt trên dòng lệnh.
Phải biết:

  • Vỏ Bash và KornShell;
  • Các lệnh tìm, grep, awk, sed, lsof;
  • Lệnh mạng nslookup và netstat.

Fury Road: Hành trình của nhà phát triển thanh toán

4. Mạng và bảo mật

Thanh toán có liên quan chặt chẽ đến các yêu cầu bảo vệ mạng và dữ liệu. Bạn không thể viết các dịch vụ trực tuyến nếu không hiểu cách hoạt động của mạng, vì vậy bạn cần tìm hiểu các khái niệm và giao thức cơ bản: DNS, mô hình OSI, HTTP, HTTPS, FTP, SSL, TLS. Sau đó, khi gặp lỗi Connection Refused, bạn sẽ biết phải làm gì.

5. Máy chủ

Sau khi nghiên cứu các nguyên tắc truyền thông tin trên mạng, bạn có thể bắt đầu những kiến ​​thức cơ bản về vận hành máy chủ. Bắt đầu với các máy chủ web: IIS, Apache, Nginx, Caddy và Tomcat.

Tiếp tục xuống danh sách:

  • Proxy ngược;
  • Proxy ẩn danh;
  • Bộ nhớ đệm;
  • Cân bằng tải;
  • Bức tường lửa.

6. Tìm hiểu cơ sở hạ tầng dưới dạng mã

Tôi tin rằng giai đoạn này là một trong những giai đoạn quan trọng nhất. Bạn sẽ phải hiểu ba chủ đề rộng:

  • Vùng chứa: Docker và Kubernetes
  • Công cụ quản lý cấu hình: Ansible, Chef, Salt và Puppet
  • Sao lưu: Địa hình, đám mây.

7. Tìm hiểu CI/CD

Một kỹ năng hữu ích khác dành cho nhà phát triển thanh toán là có thể thiết lập quy trình để tích hợp và phân phối liên tục. Trong khu vực CI/CD có các công cụ như Jenkins, TeamCity, Drone, Circle CI và các công cụ khác. Tiết lộ nội dung: ban đầu chỉ cần học Jenkins được sử dụng rộng rãi là đủ.

8. Kiểm soát phần mềm và cơ sở hạ tầng

Mục tiêu chính là hiểu những điều cơ bản về giám sát ứng dụng. Các công cụ trong lĩnh vực này được chia thành ba nhóm:

  • Giám sát cơ sở hạ tầng: Nagios, Icinga, Datadog, Zabbix, Monit.
  • Giám sát hiệu suất ứng dụng: AppDynanic, New Relic.
  • LMS: ELK Stack, Graylog, Splunk, Papertrail.

9. Dịch vụ đám mây

Trong tương lai gần, mọi ứng dụng hoặc phần mềm sẽ có phiên bản đám mây. Sớm hay muộn, các nhà phát triển cũng sẽ gặp phải đám mây, vì vậy hãy tìm hiểu về các nhà cung cấp đám mây phổ biến (AWS, Google Cloud và Azure) cũng như những kiến ​​thức cơ bản về công nghệ.

10. Làm việc với cơ sở dữ liệu

Tất cả các dự án hiện tại đều sử dụng cơ sở dữ liệu và trải nghiệm với DBMS và SQL sẽ giúp bạn bắt đầu dễ dàng hơn. Tìm hiểu cách viết truy vấn SQL, sử dụng giải thích và tìm hiểu cách hoạt động của chỉ mục. Cách dễ nhất là tham gia một khóa học. Bạn cũng có thể thực hành các kỹ năng tạo tài liệu Postgres của mình và thử nghiệm việc sao chép.

11. Cải thiện kỹ năng mềm của bạn

Một điểm bất ngờ khác thường nhưng không kém phần quan trọng. Để bắt đầu, hãy kiên nhẫn. Bạn nhanh chóng làm quen với những tình huống như “sửa bàn ủi, bạn là lập trình viên”, nhưng bạn cần chuẩn bị tinh thần cho thời hạn khởi động dự án mới. Nếu bạn mới bắt đầu lập trình từ con số 0 đến một năm và được coi là Junior, hãy chuẩn bị tinh thần cho những lời chỉ trích và học cách chấp nhận nó, thì việc xem xét mã bởi người cố vấn thường là một quá trình khó khăn. Nhưng đồng thời, một kỹ năng bắt buộc là khả năng bảo vệ quan điểm của mình và tranh luận mang tính xây dựng; đôi khi sự thật được sinh ra trong một cuộc tranh luận. Các nhà phát triển không bao giờ ngừng học hỏi, nghề nghiệp thực tế không có giới hạn, vì vậy khả năng học hỏi và KHAI THÁC học hỏi những điều mới là nền tảng cho sự phát triển của bạn.

Fury Road: Hành trình của nhà phát triển thanh toán

Tôi thường được hỏi khi nào một người mới bắt đầu đạt đến trình độ trung cấp và khi nào anh ta có thể tự hào được gọi là “người cao cấp”. Tôi tin rằng không phải số năm làm việc quyết định thời điểm chuyển từ cấp này sang cấp khác, mặc dù kỹ năng thực hành là tiêu chí then chốt. Chính các kỹ năng mềm thường quyết định tốc độ phát triển của nhà phát triển: một người mới bắt đầu được đào tạo và chăm chỉ có thể viết mã chất lượng cao bằng nhiều ngôn ngữ và có thể làm việc theo nhóm chỉ trong vài tháng. Một nhà phát triển có 10 năm kinh nghiệm có thể không giải quyết được các vấn đề không chuẩn, quản lý nhóm và có kỹ năng phiến diện.

Đây là cách tôi nhìn nhận con đường phát triển của một nhà phát triển thanh toán, đây là cách chúng tôi phát triển các chuyên gia có trình độ trong nhóm Forward Telecom của mình. Dường như không thiếu thứ gì, nhưng tôi luôn biết ơn những bổ sung hữu ích cho vấn đề này.

Nguồn: www.habr.com

Thêm một lời nhận xét