You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Let me introduce my self,
My name is Agus Makmun, and I was 26 years old.
I come from South Sumatera, indonesia.
And I was bachelor's degree in computer science at university muhammadiyah of surakarta.
I have exposure working every aspect of the software development
with Python, Django, Rest API, Web Development, AWS (Lightsail, S3, EC2, RDS),
Digital Ocean, Python Anywhere, other VPS Deployment, Microservices & Legal Scraping.
Experiences in using Django & unit testing
I have used the Django more than 5 years.
I also created some open source projects that founds at https://github.com/agusmakmun
For Unit Testing, I'm using standard module from python called with "unittest", also "django unittest".
Tools / Tech that you used for example Django (how many years have you've been using the tools, how many projects you've handled before, etc)
Years: I have using this Django for more than 5 years.
Tools: anyway, I also love to create the modules for python & django.
you can directly check my tools at https://pypi.org/user/agaust
But, I also use the another tools depends with the projects. It's like:
Standard python module,
Google Suit & https://postmarkapp.com for E-mail,
zenziva for sms,
https://midtrans.com, nicepay.co.id for payment gateway.
Celery for cron jobs.
sentry.io for error tracking.
MongoDB, MysqlDB, PostgreSQL for the database.
requests, BeautifulSoup, NLTK, OpenCV, Jupyter, Nginx, Postman, many others.
and much more, I forgot how many sites I have done.
Your achievements
I am not very active in following competencies, so:
My achievement is just one, as top 5th in "ProblemSet Competition from CodePolitan" at https://www.codepolitan.com
That was my short summary about my self. For more, you can take a look at my c.v file (pdf)
Let me introduce my self,
My name is Agus Makmun,
26 (tweenty six) years old.
I come from south sumatera, indonesia.
And I was bachelor's degree in computer science at university muhammadiyah of surakarta.
By the way, My english is not really good.
Previously, I have lost my jobs as a Backend Developer due to covid-19 & funding issues. And now I trying to search new opportunities.
I have exposure working every aspect of the software development with Python, Django, Rest API, Web Development, AWS (Lightsail, S3, EC2, RDS), VPS Deployment, Microservices & Legal Scraping.
That was my short summary about my self.
can you please, explain more detail about this company.
My expected salary around ten million ruphias (10 juta). OR
one thousand dollar ($1000) in Singapore currency.
Bubble sort is a sorting algorithm that is used to sort items in a list in ascending order.
This is done by comparing two adjacent values.
If the first value is higher than the second value,
then the first value takes the position of the second value while the second value
takes the position that was previously occupied by the first value.
If the first value is lower than the second value, then no swapping is done.
defbubbleSort(ar):
n=len(arr)
# Traverse through all array elementsforiinrange(n):
# Last i elements are already in correct positionforjinrange(0, n-i-1):
# Swap if the element found is greater than the next elementifar[j] >ar[j+1] :
ar[j], ar[j+1] =ar[j+1], ar[j]
# Driver code to test abovear= ['t','u','t','o','r','i','a','l']
bubbleSort(ar)
print ("Sorted array is:")
foriinrange(len(ar)):
print (ar[i])
# Python program for implementation of Bubble Sort defbubbleSort(arr):
n=len(arr)
# Traverse through all array elements foriinrange(n-1):
# range(n) also work but outer loop will repeat one time more than needed. # Last i elements are already in place forjinrange(0, n-i-1):
# traverse the array from 0 to n-i-1 # Swap if the element found is greater # than the next element ifarr[j] >arr[j+1] :
arr[j], arr[j+1] =arr[j+1], arr[j]
# Driver code to test above arr= [64, 34, 25, 12, 22, 11, 90]
bubbleSort(arr)
print ("Sorted array is:")
foriinrange(len(arr)):
print ("%d"%arr[i]),
3. Palindrome
A palindrome is a word, number, phrase, or other sequence of characters which reads the same backward as forward, such as madam, racecar.
Palindrom adalah sebuah kata, frasa, angka maupun susunan lainnya yang dapat dibaca dengan sama baik dari depan maupun belakang
defisPalindrome(x):
val=str(x)
returnval==val[::-1]
defisPalindrome(word):
# Loop over half the length of the string in questionforlinrange(round(len(word)/2)):
# If the current letter is not equal to the letter# on the corresponding opposite of the string, return False ifword[l] !=word[-(l+1)]: returnFalse# If they all match, return TruereturnTrue
Like Merge Sort, QuickSort is a Divide and Conquer algorithm. It picks an element as pivot and partitions the given array around the picked pivot. There are many different versions of quickSort that pick pivot in different ways.
# Python program for implementation of Quicksort Sort
# This function takes last element as pivot, places
# the pivot element at its correct position in sorted
# array, and places all smaller (smaller than pivot)
# to left of pivot and all greater elements to right
# of pivot
def partition(arr,low,high):
i = ( low-1 ) # index of smaller element
pivot = arr[high] # pivot
for j in range(low , high):
# If current element is smaller than the pivot
if arr[j] < pivot:
# increment index of smaller element
i = i+1
arr[i],arr[j] = arr[j],arr[i]
arr[i+1],arr[high] = arr[high],arr[i+1]
return ( i+1 )
# The main function that implements QuickSort
# arr[] --> Array to be sorted,
# low --> Starting index,
# high --> Ending index
# Function to do Quick sort
def quickSort(arr,low,high):
if low < high:
# pi is partitioning index, arr[p] is now
# at right place
pi = partition(arr,low,high)
# Separately sort elements before
# partition and after partition
quickSort(arr, low, pi-1)
quickSort(arr, pi+1, high)
Devops adalah
DevOps is a culture that allows the development and the operations team to work together. This results in continuous development, testing, integration, deployment, and monitoring of the software throughout the lifecycle.
DevOps merupakan serangkaian pekerjaan yang mengotomasisasi proses antara development team & operation team.
Sehingga menghasilkan pengembangan software yang berkelanjutan (continuous development), testing, integration, deployment, serta melakukan monitoring terhadap lifecycle yang sedang berlangsung.
Software devops
Kubernetes => platform open source yang digunakan untuk manajemen container.
Docker => sebagai containernya.
Container => sebuah wadah yang digunakan untuk menyimpan sebuah sebuah software secara lengkap beserta semua dependensinya.
Ansible => sebuah provisioning tool yang dikembangkan oleh RedHat.
Git adalah salah satu sistem pengontrol versi (Version Control System) pada proyek perangkat lunak yang diciptakan oleh Linus Torvalds
Ansible adalah sebuah tool management untuk mengotomasi system ataupun network.
Jadi contohnya gini kita memiliki 10 server dan kemudian kita akan konfigurasi nginx, tanpa ansible kita akan membutuhlan waktu lama untuk konfigurasi itu karena kita harus satu satu masuk ke server yang ada dan menginstalmya satu satu.
Teknologi System Architecture yang digunakan
Python sebagai bahasa pemrograman yang digunakan untuk backend service.
Besarkan spesifikasi server machine (seperti: memory min 8gb, processor, storage)
Optimasi pada Nginx'nya (menggunakan cache)
Menggunakan proxy reverse
Menggunakan load balancer
Optimasi pada Django'nya:
menggunakan redis cache
pada database query, Django ORM'nya (contoh: select_related, prefetch_related)
Mengimplementasikan microservices
Key notes
VPC (Virtual private cloud) AWS
ELB (Elastis Load Balancer) AWS
Amazon Elastic Compute Cloud (Amazon EC2)
Amazon Simple Storage Service (S3)
RPC - Remote Procedure Calls (RPC) RPC adalah suatu protokol yang menyediakan suatu mekanisme komunikasi antar proses yang mengijinkan suatu program untuk berjalan pada suatu komputer tanpa terasa adanya eksekusi kode pada sistem yang jauh ( remote system ), Ini berbeda dengan REST. https://medium.com/programmer-geek/mengenal-rpc-remote-procedure-call-7d8a794bbd1f
RabbitMQ merupakan message broker, seperti socket io. Ada beberapa merk message broker diantaranya RabbitMQ, Apache Kafka, ActiveMQ (JMS)
What are functions in Python? A function is a block of code which is executed only when it is called. To define a Python function, the def keyword is used.
What is __init__?__init__ is a method or constructor in Python. This method is automatically called to allocate memory when a new object/ instance of a class is created. All classes have the __init__ method.
What is a lambda function? An anonymous function is known as a lambda function. This function can have any number of parameters but, can have just one statement.
Explain Inheritance in Python with an example Inheritance allows One class to gain all the members(say attributes and methods) of another class. Inheritance provides code reusability, makes it easier to create and maintain an application. The class from which we are inheriting is called super-class and the class that is inherited is called a derived / child class.
How are classes created in Python? Class in Python is created using the class keyword.