Rabu, 28 September 2016

Pengalaman Seleksi Kerja di Astra Daihatsu Motor (ADM)

Astra Daihatsu Motor (ADM) adalah joint venture antara Daihatsu Motor Company dengan Astra International. ADM merupakan satu-satunya perusahaan yang berhak mengimpor, merakit dan membuat kendaraan bermerk Daihatsu di Indonesia. Pasti banyak dong yang berminat gabung dengan perusahaan ini. Ada beberapa tahap yang harus dilalui untuk menjadi pegawai tetap di ADM. Ada seleksi administrasi, psikotes, lgd, interview hrd, interview user, dan medical checkup. Setelah medcek akan ada offering letter, dan akan menjadi pegawai kontrak selama 1 tahun sebagai New Employee Development Program (NEDP). Jika memang memenuhi syarat, akan diangkat menjadi pegawai tetap. Begitulah kata salah satu Bapak hrdnya ketika presentasi..hahaha. Karena untuk sekarang ini, saya masih dalam proses seleksi.

1. Tahap administrasi
Kurang tau kriteria yang bagaimanakah yang dicari dari pihak ADM, saran saya lengkapi persyaratan dan apply ke lowongan yang sesuai. Kayaknya kebanyakan yang lolos pas waktu itu adalah anak teknik dan ekonomi.

2. Tahap psikotes
Psikotesnya ada tes ngitung2, main logika, ada balok ditumpuk2 terus ditanya ada berapa balok di sekelilingnya, ada tes logika lebih besar lebih kecil. Ada juga warteg, gambar orang dan pohon. Pastinya ada juga tes krapelin. :D
Saran saya : sarapan sebelum mengikuti tes dan tidur yang cukup, konsentrasi, dan do the best. Pastinya juga berdoa.

3. Tahap LGD
LGDnya waktu itu 7 orang perkelompok. Di kasih studi kasus tentang masalah suatu perusahaan dalam waktu kurang lebih 1 jam. Kemudian dibaca sendiri2 selama 10 menit dan tulis solusinya, kemudian sisa waktu digunakan untuk diskusi.
Saran saya : Pastikan kamu punya solusi untuk masalah yang dihadapi, sampaikan dengan elegan, tidak memotong pembicaraan orang lain, tidak ngotot, hargai pendapat orang lain, be active and confident :).

4. Tahap interview HRD
Interview HRD ini hanya berlangsung kurang lebih 15 menit. Ini lebih ke kehidupan pribadi kita selama ini. Siapkan jawaban terbaik tentang profil dirimu. Dan siapkan juga kemampuan bahasa inggris kamu. Meskipun interview tidak berlangsung dalam bahasa inggris, tetapi ada saat ketika interviewee akan menguji kemampuan bahasa inggris mu. Do the best. Menyesalnya saya tidak do the best pada tahap ini, agak nervous, dan kurang berjalan lancar. Tapi masih berharap bisa lolos ke tahap selanjutnya. Meskipun batas akhir waktu pengumuman tinggal 2 hari lagi. Semoga saya termasuk orang yang beruntung. Begitupun kalian semua. :)

Kamis, 22 September 2016

First post for this year

Helloooo  everyone,
This is 2016 and already in September.
Long time, I didn't write something in this blog. 
What are you like to do in this month? What do you wish can happen in this last fourth month from this year? If me, I hope I can get a job soon. I really want get a right job for me. I am still in process for recruitment test in Astra Daihatsu Motor (ADM) and Bank Indonesia. I hope, I can join one of this company. This is one of my dream.
Hopefully, all of you will get your dreams come true too.

So, why I write this blog in English? Actually I still learn English, especially in writing and speaking. It was killing me when I got interview in English. I was very nervous in that time. I hope, someone who read this blog can give me a comment about my writing skill.
This is enough, in next post I will tell you about my story in recruitment process for that 2 company and any other company that I ever applied.

Senin, 26 November 2012

Perbedaan Antara Pemrograman Genetika dengan Algoritma Genetika


Algoritma genetika adalah teknik pencarian di dalam ilmu komputer untuk menemukan penyelesaian perkiraan untuk optimisasi dan masalah pencarian. Algoritma genetika adalah kelas khusus dari algoritma evolusioner dengan menggunakan teknik yang terinspirasi oleh biologi evolusioner seperti warisan, mutasi, seleksi alam dan rekombinasi (atau crossover). Algoritma genetika dapat menggunakan representasi graph, biner, integer, permutasi, dan real dalam pengkodeannya. Sedangkan pemrogaman genetika merupakan salah satu dari komputasi evolusioner yang sering dipakai untuk machine learning (seperti prediksi, klasifikasi, dan sebagainya) yang menggunakan representasi tree atau graph dalam proses pengkodean. Pemrograman genetika bisa menggunakan proses rekombinasi dan mutasi dengan probabilitas tertentu, tapi tidak dapat keduanya. Rekombinasi dilakukan dengan cara saling menukar ranting (sub tree), sedangkan mutasi dilakukan dengan mungubah pohon secara acak. Pemrograman genetika digunakan untuk autamtic programming.
Algoritma genetika dan pemrograman genetika diterapkan sebagai simulasi komputer dimana sebuah populasi representasi abstrak (disebut kromosom) dari solusi-solusi calon (disebut individual) pada sebuah masalah optimisasi akan berkembang menjadi solusi-solusi yang lebih baik. Panjang kromosom dalam satu populasi pada algoritma genetika memiliki ukuran yang sama panjang, sedangkan pada pemrograman genetika, kromosom-kromosom bisa memiliki panjang yang berbeda-beda dalam satu populasi. Ukuran populasi pada algoritma genetika bisa bervariasi, sedangkan pada pemrograman genetika ukuran populasi relative besar (ribuan individu).
Kromosom pada pemrograman genetika bisa memiliki ukuran yang berbeda-beda, sehingga pada generasi pertama  bisa dilakukan proses inisialisasi dengan membatasi kedalaman pohon. Sedangkan pada algoritma genetika, proses pembangkitan populasi awal biasanya dilakukan dengan menggunakan pembangkitan acak.
Evolusi pada algoritma genetika dimulai dari sebuah populasi individual acak yang lengkap dan terjadi dalam generasi-generasi. Dalam tiap generasi, kemampuan keseluruhan populasi dievaluasi, kemudian multiple individuals dipilih dari populasi sekarang (current) tersebut secara stochastic (berdasarkan kemampuan mereka), lalu dimodifikasi (melalui mutasi atau rekombinasi) menjadi bentuk populasi baru yang menjadi populasi sekarang (current) pada iterasi berikutnya dari algoritma. Sedangkan pada pemrograman genetika populasi awal dikenakan seleksi orang tua yang biasanya dilakukan secara proporsional terhadap nilai fitness.
Agar lebih efisien, seleksi ortu dilakukan dengan cara:
  •   Buat perankingan berdasarkan fitness dan bagi individu ke dalam dua grup
  • Grup 1 berisi x% individu terbaik dan Grup 2 berisi (100-x)% individu yang lain.
  •   Lakukan 80% seleksi ortu pada Grup 1 dan 20% pada Grup 2.
  •   Untuk ukuran populasi = 1000, 2000, 4000, dan 8000 gunakan secara berturut-turut x = 32%, 16%, 8% dan 4%.
Setelah seleksi orang tua, populasi akan dikenakan proses rekombinasi atau mutasi (pilih salah satu). Kemudian seleksi survivor untuk generasi berikutnya. Umumnya, pemrograman genetika menggunakan model populasi generational scheme sehingga tidak ada seleksi survivor.
Algoritma genetika tidak terfokus pada salah satu bahasa pemrograman karena bersifat general programming, sedangkan pemrograman genetika lebih terfokus pada bahasa LISP. Dalam pemrosesannya, pemrograman genetika lebih lambat dibandingkan dengan algoritma genetika.

Rabu, 07 November 2012

TEKNOLOGI DI BELAKANG FACEBOOK


PHP
Seluruh website Facebook dibangun menggunakan PHP (PHP Hypertext Preprocessor). PHP adalah bahasa scripting server-side yang membuat dan menghasilkan output dinamis halaman HTML. Facebook mengubah PHP ke dalam kode C++ yang disebut dengan HipHop untuk framework PHP. Pengkonversian ini menyebabkan performa website lebih cepat dan tidak terlalu memberatkan server, memberikan user kelancaran, dan pengalaman yang tidak diinterupsi.
Cache
Facebook mengandalkan Memcached menyembunyikan dan menyimpan halaman Web pada memori. Memcached berperan sebagai layer antara server hosting biasa dengan server database MySQL. Hal ini membantu loading Facebook lebih cepat dibandingkan dengan social network lainnya. Secara umum, caching membantu untuk mempercepat website dengan menyimpan file yang biasa digunakan dan mendapatkannya kembali dari buffer memori server.
Database
Dalam menyimpan data, Facebook menggunakan database MySQL. MySQL adalah software database open-source. MySQL adalah salah satu komponen utama dari teknologi di belakang Facebook. Facebook mempunyai lebih dari 30.000 server dengan porsi yang besar dari server data base MySQL.
Photo Storage
Sejak Juni 2011, Facebook adalah website foto sharing terbesar dunia pada Internet. Untuk mengatasi volume foto yang besar yang diupload dan dilihat pada website, perusahaan ini menggunakan Haystack. Haystack adalah software open-source yang merupakan platform penyimpanan objek dengan perfomansi tinggi.

Rabu, 31 Oktober 2012

Message Passing Interface (MPI)

MPI is a specification for the developers and users of message passing libraries. By itself, it is NOT a library - but rather the specification of what such a library should be.
Simply stated, the goal of the Message Passing Interface is to provide a widely used standard for writing message passing programs. The interface attempts to be
  • practical
  • portable
  • efficient
  • flexible
Reasons for Using MPI:

  • Standardization - MPI is the only message passing library which can be considered a standard. It is supported on virtually all HPC platforms. Practically, it has replaced all previous message passing libraries.
  • Portability - There is no need to modify your source code when you port your application to a different platform that supports (and is compliant with) the MPI standard.
  • Performance Opportunities - Vendor implementations should be able to exploit native hardware features to optimize performance. 
  • Functionality - Over 115 routines are defined in MPI-1 alone.
  • Availability - A variety of implementations are available, both vendor and public domain.

Parallel Computing

Parallel Computing is the simultaneous use of multiple compute resources to solve a computational problem :
  • To be run using multiple CPUs
  • A problem is broken into discrete parts that can be solved concurrently
  • Each part is further broken down to a series of instructions
  • Instructions from each part execute simultaneously on different CPUs
  • The compute resources might be:
    • A single computer with multiple processors;
    • An arbitrary number of computers connected by a network;
    • A combination of both.
  • The computational problem should be able to:
    • Be broken apart into discrete pieces of work that can be solved simultaneously;
    • Execute multiple program instructions at any moment in time;
    • Be solved in less time with multiple compute resources than with a single compute resource.
Parallel computing is an evolution of serial computing that attempts to emulate what has always been the state of affairs in the natural world: many complex, interrelated events happening at the same time, yet within a sequence.

Main reason using parallel computing :
  1. Save time and/or money.
  2. Solve larger problems.
  3. Provide concurrency.
  4. Use of non-local resources.
  5. Limits to serial computing.
Type of parallel computer based on Flynn's Classical Taxonomy :
  1. Single Instruction Multiple Data (SIMD)
  2. Multiple Instruction Single Data (MISD)
  3. Multiple Instruction Multiple Data (MIMD)
Parallel Computer Memory Architectures :
  1. Shared memory
  2. Diatributed memory
  3. Hybrid distributed-shared memory

Source : Introduction to Parallel Computing, Author: Blaise Barney, Lawrence Livermore National Laboratory

Rabu, 24 Oktober 2012

3D Studio Max


S
uka kah kamu dengan film-film berbasis 3D  seperti Toy Story, Up, Despicable Me, dan Bug’s Life? Tak hanya anak-anak yang menyukai film animasi 3D ini, bahkan orang dewasa pun menyukainya hingga bisa menonton sampai berkali-kali. Ini dikarenakan film-film tersebut sangat menghibur dan dapat menghilangkan stress pada saat weekend setelah seminggu bekerja keras. Film-film 3D ini adal ah hasil dari proses manipulasi gambar visual secara digital, lalu di buat bergerak atau menjadi animasi.
Banyak software-software yang mendukung pengolahan gambar 3D ini. Dari yang open source, yaitu Blender, ataupun yang berbayar seperti 3ds Max. Kali ini kami akan membahas tentang 3ds Max beserta fitur-fiturnya. Silahkan disimak J

3D Studio Max (3ds Max)  atau biasa dikenal dengan 3D Max adalah suatu software (Perangkat lunak) untuk membuat sebuah grafik vektor 3 dimensi dan animasi. Dikembangkan  oleh Autodesk Media & Entertainment, yang dulunya dikenal sebagai Discreet and Kinetix. Para desain grafis banyak menggunakan software ini untuk membuat sebuah film animasi, arsitektur rumah, ataupun membuat logo suatu perusahaan. Untuk menjalankan aplikasi ini dibutuhkan spesifikasi komputer yang cukup tinggi agar mendapat kenyamanan saat menggunakannya. Ini dikarenakan banyak proses yang membutuhkan grafik yang tinggi untuk melakukan rendering dan sebagainya.
Fitur-fitur 3ds Max :
1.      Fitur untuk membuat model organic dan unorganic.
Model organic dapat berupa karakter model makhluk hidup nyata seperti manusia, hewan. Dan model makhluk hidup yang tidak nyata (khayalan) seperti monster, peri, dan lain-lain. Model unorganic dapat berupa model objek-objek benda mati seperti mesin, bangunan, mobil, sepeda motor, furniture, dan lain-lain.
Pada 3ds max feature yang digunakan untuk membuat model organic umumnya dengan menggunakan teknik Polygonal modeling dan NURBS modeling. Teknik Polygonal modeling adalah teknik membuat model dengan memakai objek-objek geometry dasar yang kemudian dikembangkan menjadi objek model yang lebih kompleks. Umumnya memakai bentuk objek geometry box (kotak) yang kemudian dihaluskan lagi permukaannya (smooth). Sedangkan teknik NURBS modeling adalah teknik membuat model dengan memakai garis-garis yang dibuat seperti rangka objek yang diinginkan kemudian diberi surface (bentuk permukaan).
Model unorganic umumnya dibuat dengan menggunakan teknik Compound modeling dan Spline modeling (dapat juga dengan menggunakan teknik Polygonal Modeling). Teknik Compound modeling adalah teknik membuat model dengan mengkombinasikan (menggabungkan, memotong atau mengambil perpotongan) antar bentuk objek-objek geometry. Sedangkan teknik Spline modeling adalah teknik membuat model dengan membuat bentuk objek 2d-nya terlebih dahulu yang kemudian “ditransfer” menjadi bentuk 3d dengan memberikan ketebalan pada objek 2d tersebut.

2.    Fitur untuk memberikan rangka pada objek karakter 3d yang telah dibuat, sehingga karakter 3d tersebut dapat bergerak seperti layaknya manusia. Ada 2 teknik yang dapat dilakukan, yaitu dengan teknik Bone dan teknik Biped. Teknik Bone adalah dengan membuat tulang secara satu-persatu yang kemudian dihubungkan antar masing-masing tulang yang saling berhubungan. Sedangkan teknik Bipel memungkinkan untuk membuat tulang yang telah terintegrasi menjadi satu kesatuan rangka yang utuh, sehingga tidak perlu lagi menghubungkan satu-persatu.

3.    Fitur membuat tekstur real dan tekstur kartun. Objek 3D yang dibuat dapat diberikan tekstur yang realistik sehingga terlihat nyata atau berupa tekstur kartun. Tekstur real adalah memberikan tekstur yang sebenarnya sesuai dengan sifat dan karakteristik permukaan suatu objek atau benda, sehingga akan diperoleh hasil yang tampak asli dan nyata. Fitur yang digunakan dengan menggunakan material standard. Sedangkan tekstur kartun adalah memberikan tekstur seperti kartun, yang warnanya cerah dan terang. Fitur yang digunakan adalah material Ink’npaint.

4.     Fitur membuat efek-efek api, asap (fire effect), kabut (fog), pendar cahaya (volume light), dan lain-lain. Efek-efek ini dapat diterapkan dengan memakai feature effect dan environment effect.

5.    Fitur membuat efek-efek yang terjadi bila mata/kamera melihat objek bergerak, misalnya efek motion blur dan depth of field (dof). Efek motion blur adalah efek bagaimana mata kita atau lensa kamera menangkap gambar objek yang bergerak yang memperlihatkan bias (blur) pergerakannya. Dof adalah efek bagaimana bila mata kita atau lensa kamera focus melihat satu objek, maka objek-objek di sekitarnya pasti akan menjadi tidak fokus (blur). Pemberian efek-efek ini tentu akan memberikan kesan yang semakin tampak realistis.

6.     Fitur untuk membuat efek-efek sinar cahaya. Efek-efek tersebut dapat berupa cahaya matahari, sunset, dan lain-lain  yang tentunya akan semakin memperkaya dan mempercantik desain 3D yang dibuat. Untuk membuatnya dapat memakai fitur effect.

7.   Fitur untuk membuat objek-objek bulu, rumput, dan lain-lain. Objek-objek ini memerlukan fitur aplikasi khusus yaitu fitur Hair & Fur.

8.    Fitur untuk membuat objek kain atau baju. Fitur yang digunakan adalah Cloth Simulation. Dengan fitur ini dapat membuat kain atau baju dengan lebih natural dan realistik, menyerupai dengan sifat baju/kain seperti dalam kondisi real/nyata.

9.    Fitur untuk membuat objek-objek liquid/cairan. Aplikasinya banyak ditujukan untuk membuat environment, seperti environment (panorama) di sungai, laut, kolam, dan lain-lain. Sama halnya seperti pembuatan objek bulu, objek liquid memerlukan tingkat kekompleksan yang sangat khusus, karena object ini sangat berat “dibaca” oleh komputer, apalagi bila tingkat akurasi liquisnya tinggi. Fitur yang dipergunakan adalah Meta Particle dan BlobMesh.

1   Fitur yang membuat cahaya yang realistis. Cahaya yang tampak realistis adalah cahaya yang memantul dan menyebar ke segala arah, sesuai dengan arah pantulan objeknya. Fitur yang dipakai adalah Global Illumination dengan beragam teknik, seperti Light Tracer, Radiosity atau MentalRay.

1    Fitur untuk membuat animasi dinamis. Banyak diaplikasikan untuk membuat animasi objek-objek yang saling bertubrukan/tabrakan, berbenturan, pecah, dan lain-lain. Tidak hanya dapat diterapkan untuk benda-benda (objek) solid/keras (rigid), tetapi dapat juga diterapkan untuk benda-benda lunak(soft), kain (cloth), tali (rope), dan lainnya.