Fitur-fitur pinjaman pengujian: bagaimana satu bug memengaruhi pendapatan ribuan dolar

Hai Nama saya Olga Mikhalchuk, saya seorang insinyur QA (Quality Assurance engineer atau tester) di perusahaan fintech ID Finance. Dalam posting ini saya akan memberi tahu Anda apa yang QA lakukan dan bagaimana mencari dan memperbaiki bug dalam estimasi kredit, sampai mereka menimbulkan kerugian besar di perusahaan Anda.

gambar

Sedikit tentang pekerjaan saya: QA atau tester


ID Finance adalah perusahaan fintech yang proyeknya dipresentasikan di tujuh negara. Saya bekerja untuk Brasil, produk MoneyMan (layanan pinjaman online).

Untuk mulai dengan, saya ingin mendefinisikan sedikit dengan istilah "Insinyur Jaminan Kualitas" dan "tester", meskipun ini adalah topik untuk artikel terpisah. Tidak ada ide tunggal dari konsep-konsep ini. Dalam kebanyakan kasus, penguji disebut ahli yang memverifikasi operasi sistem yang benar setelah pengembangan dan sebelum memberikan fungsionalitas kepada pengguna akhir. Dan QA berarti pekerjaan yang lebih global dan lebih dalam untuk memastikan kualitas produk. Ini termasuk studi tentang penyebab cacat yang muncul, pencegahannya, pemeliharaan pasca-pelepasan, peningkatan proses yang berkelanjutan, dan banyak lagi.

Bahkan, pekerjaan saya terlihat seperti ini: kami menganalisis dan memeriksa tugas-tugas yang disusun dan dikembangkan oleh departemen lain oleh pemrogram, memasukkan dan menganalisis bug, menulis dokumentasi dan laporan pengujian, memantau status produksi, melakukan demo, dll. Kami juga memiliki konsep Produksi QA. Orang-orang dari departemen kami juga harus memiliki gagasan tentang proses pengembangan: setiap hari kita pergi ke basis data dan tingkat pencatatan sistem, melihat kode dan konsol, dan menggunakan sistem untuk memantau beban dan keadaan sistem. Kita harus memahami kekhasan bisnis: ini mencakup analisis tugas dan komunikasi dengan departemen lain. Harus tahu fitur pekerjaan departemen lain. Contoh: bagaimana Anda dapat menguji bahwa akrual kredit dilakukan dengan benar ketika Anda tidak memahami ini? Itulah sebabnya saya akan terus menyebut posisi saya QA, yaitu spesialis jaminan kualitas, meskipun saya tidak akan tersinggung jika saya disebut sebagai tester.

gambar

Pengujian Penetapan Biaya Kredit


Di perusahaan kami, perhitungan kredit memanggil semua perhitungan parameter dan indikator kredit. Ini adalah jadwal pembayaran, jumlah pokok dan bunga, denda jika terjadi keterlambatan, perhitungan tugas, pajak, dll. Total lebih dari 100 indikator dalam tabel basis data yang berbeda. Selain layanan dasar, ada yang tambahan: ekstensi, restrukturisasi, renovasi. Ada juga sistem diskon, bonus, berbagai produk kredit yang tersedia untuk pengguna dan banyak fitur lainnya.

gambar

Perhitungan kredit adalah salah satu bidang paling sulit yang saya temui selama bekerja di perusahaan. Menurut pendapat saya, hanya kebijakan kredit yang satu tingkat kompleksitasnya (seperangkat aturan dan algoritme yang dengannya keputusan dibuat tentang kemungkinan pemberian pinjaman, dan pinjaman mana yang dapat kami berikan kepada pengguna ini).

Fitur pengujian estimasi kredit


  1. Bersiaplah untuk proses pengujian sebelumnya, idealnya - sebelum pengembangan. Analisis persyaratan, siapkan dokumentasi uji.
  2. Kami beralih dari cek yang lebih mendasar ke yang lebih kompleks dan gabungan: pertama kami memeriksa penerbitan pinjaman, pembayaran tepat waktu, jumlah dalam jumlah, dll. Kemudian cek yang sedikit lebih rumit, seperti pembayaran awal, penundaan, kelebihan pembayaran, dan kemudian kombinasi berbagai kasus.
  3. Kami memeriksa pengaturan awal dan kontrak yang ditandatangani peminjam.
  4. Jangan lupa tentang layanan tambahan (pembaruan, diskon, dll.)
  5. Lingkungan produksi - gudang kasus uji. Ini adalah ide yang baik untuk mengambil kasus "referensi" dan membandingkan biayanya.
  6. Dampak perubahan biaya pada pelanggan yang ada tidak dapat diizinkan.
  7. Anda harus selalu ingat tentang regresi setelah perubahan apa pun.
  8. Kami mempertimbangkan apakah tugas pihak ketiga lainnya dapat memengaruhi estimasi kredit.

gambar

Kasus khusus: bagaimana bug dapat memengaruhi pendapatan ribuan dolar dan bagaimana kami bertarung dengannya

Saya mulai bekerja dengan perkiraan ketika mereka sudah di rilis selama sekitar dua tahun, jadi saya tidak tahu banyak pesona dari asal mula proses ini. Meskipun demikian, saya harus menghadapi stabilisasi dan perbaikan bug mereka. Saya akan memberi tahu Anda tentang kasus-kasus yang paling saya ingat:

Efek Kupu-kupu dalam Penentuan Biaya

Jika Anda google definisi "efek kupu-kupu", Anda dapat melihat: "Efek kupu-kupu adalah istilah yang menunjukkan properti dari beberapa sistem kacau: sedikit efek pada sistem dapat memiliki konsekuensi yang besar dan tidak terduga, termasuk di tempat yang sama sekali berbeda." Saya pikir definisi ini dengan sempurna menggambarkan situasi dalam estimasi kredit.
Sebagai contoh, setelah kami memperbaiki bug kecil: ada sedikit ketidakakuratan dalam pembulatan beberapa bidang. Setelah menghitung ulang semua pinjaman (bagus di lingkungan pengujian), ternyata sekitar seribu pinjaman terlambat, meskipun sebenarnya tidak seharusnya! Jadi perbaikan dari bug yang tidak signifikan tersebut terpengaruh, karena dalam perhitungan kredit semua parameter saling terkait dan saling mempengaruhi, kadang-kadang di tempat yang tidak terduga. Alhamdulillah ini cepat diketahui, diperbaiki, tidak memungkinkan untuk pengguna akhir. Faktanya adalah kami mengirim informasi tentang keterlambatan ke biro kredit. Kami dapat merusak ratusan sejarah kredit pelanggan dan reputasi kami. Dan, tentu saja, bug semacam itu akan menghasilkan ribuan dolar kerugian.

gambar

Tidak dapat memperbaiki 100% bug

Seperti yang saya tulis pada paragraf pertama, semua parameter dalam perhitungan sangat memengaruhi satu sama lain. Karena itu, selama koreksi di satu tempat, sangat sering sesuatu pecah di tempat lain. Ketika kami dihadapkan dengan memperbaiki sejumlah besar bug yang terakumulasi, tentu saja, departemen bisnis benar-benar ingin semua kesalahan diperbaiki. Tetapi ternyata dalam upaya untuk memperbaiki beberapa bug yang tidak penting, semakin banyak kesalahan tumbuh, seperti bola salju. Seperti yang mereka katakan, cita-cita adalah musuh orang baik. Oleh karena itu, tugas utama kami saat itu adalah membawa sistem ke kondisi paling stabil, dengan dampak minimal bug pada bisnis, dan tidak memperbaiki 100% cacat. Pendekatan ini ternyata jauh lebih produktif daripada koreksi tanpa henti dari semakin banyak bug yang saling bertelur.

gambar

Perhatian pada kombinasi nontrivial

Sebagian besar bug terjadi justru dengan kombinasi metode pembayaran dan penggunaan pinjaman yang tidak sepele, ketika cabang-cabang dalam kode saling bingung. Sebagai contoh: pengguna membayar angsuran pertama di muka, yang kedua membayar dalam 5 langkah, mengambil perpanjangan di yang ketiga, dan kemudian menunda selama beberapa minggu ... Sayangnya, sering bug dalam kasus seperti itu sudah ada di prod. Kesimpulan: kami memperhatikan kombinasi kasus dan mengingat tentang poin keenam dari bagian terakhir (prod. Rabu - gudang kasus uji).

Jangan menyentuh pelanggan yang sudah ada!

Tidak mungkin untuk memungkinkan perubahan dalam jumlah, jangka waktu atau kondisi pinjaman untuk mempengaruhi pelanggan yang sudah ada yang mengambilnya pada kondisi tertentu. Jika ini terjadi, itu akan membawa banyak masalah ke departemen dukungan dan seluruh perusahaan.

Perbandingan portofolio pinjaman

Cara yang sangat efektif untuk memeriksa apakah estimasi kredit berfungsi dengan benar jika ada perubahan yang dilakukan adalah membandingkan portofolio pinjaman sebelum dan sesudah perubahan. Ini berarti bahwa kami memiliki basis pinjaman yang benar secara kondisional, dengan perkiraan yang memenuhi harapan bisnis. Dan kami menerapkan perhitungan kredit baru untuk database ini, dan kemudian menggunakan alat khusus dan analisis data, kami membandingkan beberapa indikator umum dari tumpukan pinjaman ini. Misalnya, jumlah pinjaman yang jatuh tempo sebelum dan sesudah perubahan atau jumlah bunga pada semua pinjaman. Metode ini sangat membantu dalam pengujian dan pemecahan masalah.

gambar

Kesimpulan


Perhitungan kredit adalah topik serius dan sulit, tetapi sangat menarik dan penuh teka-teki. Ketika bekerja dengannya, Anda harus menjadi seorang analis data kecil, dan pemodal, dan ahli matematika. Tetapi bahkan binatang yang berbahaya seperti itu dapat dijinakkan jika Anda menemukan pendekatan untuk itu.

Dan poin-poin sederhana akan membantu dalam hal ini:

  • Persiapan yang cermat: persyaratan kualitas, dokumentasi bisnis dan QA, desain pengujian yang cermat;
  • Regresi (ingat "efek kupu-kupu");
  • Lingkungan produksi sebagai sumber uji kasus dan tolok ukur yang sangat diperlukan.

Source: https://habr.com/ru/post/id432148/


All Articles