آج میں انٹرن ڈویلپر کی پوزیشن کے حوالے سے شرائط کو دیکھنا چاہوں گا۔ ایک دفعہ میں نے اسے لکھا تھا: میں اس معاملے پر اپنے خیالات کا اظہار کرنا چاہتا ہوں۔ یہ نوبتی لوگوں کے لیے مفید ہو گا کہ وہ مستقبل میں نوکری تلاش کرتے وقت اس بات کا اندازہ لگا لیں کہ ان کا کیا انتظار ہے۔
خالی جگہ درج ذیل ہے: 30,000 RUB سے ٹرینی PostgreSQL ڈویلپر ۔ ذاتی انکم ٹیکس کی کٹوتی سے پہلے LLC Business Technologies St. Petersburg, Kolomyazhsky Prospekt, 33k2 بزنس ٹیکنالوجیز درکار کام کا تجربہ: درکار نہیں
Ideone سے ورکنگ کوڈ کے ساتھ لنک: یہاں یہ کام کامیابی کے ساتھ مکمل ہوا، جس کے بعد مجھے انٹرویو کے لیے مدعو کیا گیا، جہاں انہوں نے انٹرویو کے بجائے اسی طرح کے کاموں کی ایک اور کھیپ مجھ پر پھینک دی اور مجھے قلم دے کر دو گھنٹے کے لیے وہاں سے چلے گئے۔ کاغذ کے 2 A4 ٹکڑے۔ انہوں نے ان کی طرف دیکھے بغیر پتے لے لیے اور کہا کہ واپس بلا لیں گے۔ ایسی تفریح سے میری خوشی کو سینسر الفاظ میں بیان نہیں کیا جا سکتا۔ لیکن، کم از کم، یہ وہ تلخ حقیقت ہے جس کا سامنا بہت سے لوگوں کو اپنے سفر کے آغاز میں کرنا پڑے گا۔
میں خلوص دل سے آپ کو دلچسپ اور تعمیری انٹرویوز کی خواہش کرتا ہوں۔ اپنے آجر کا انتخاب سمجھداری سے کریں۔ سب سے بہترین!) PS: اپریل 2018 (سینٹ پیٹرزبرگ) کے لیے ملازمت دینے والی کمپنیوں کا میرا جائزہ یہاں پایا جا سکتا ہے
- مکمل وقت، مکمل وقت
- ایک ڈویلپر کی رہنمائی میں کم پیچیدگی والے کاموں کا نفاذ
- قابلیت میں مسلسل اضافہ
- سٹرکچرڈ پروگرامنگ کے اصولوں اور رشتہ دار ڈیٹا بیس کے نظریہ کی سمجھ۔
- ذمہ داری، آزادی، پہل
- مواصلات کی مہارت، صلاحیت اور ٹیم میں کام کرنے کی خواہش
- اعلی سیکھنے کی صلاحیت
- علم
- ایس کیو ایل
- Pl\sql;
- Pl\pgSql;
- C++، جاوا، پاسکل۔
- ایک مستحکم، متحرک طور پر ترقی پذیر کمپنی میں کام کریں۔
- کام کرنے کے آرام دہ حالات
- رسمیت اور بیوروکریسی کا فقدان
- پیشہ ورانہ اور کیریئر کی ترقی کے وسیع مواقع
- انٹرویو کے نتائج پر مبنی تنخواہ
- لیبر کوڈ کے مطابق رجسٹریشن، لیبر قانون سازی کے مطابق تنخواہ کی چھٹی۔
- براہ کرم خط کے ہیڈر میں جاب کوڈ کی نشاندہی کریں: Project04
- بائیں مارجن سے انڈینٹیشن گھونسلے کی سطح کی نشاندہی کرتا ہے۔
- لوپس جبکہ، کے لیے، دہرائیں اور مشروط تعمیرات کا وہی مطلب ہے جو پاسکل میں ہے۔
- علامت "--" ایک تبصرہ کی نشاندہی کرتی ہے۔
- علامت ":=" تفویض کو ظاہر کرتی ہے۔
- متغیر طریقہ کار کے لیے مقامی ہیں جب تک کہ دوسری صورت میں بیان نہ کیا جائے۔
- سرنی انڈیکس مربع بریکٹ میں لکھا جاتا ہے، تعمیر A[i] کا مطلب ہے صف A میں i عنصر
-
کئی فیلڈز پر مشتمل یا کئی اوصاف رکھنے والی اشیاء کا استعمال ممکن ہے؛ فیلڈ ویلیوز کو FieldName[ObjectName] کے طور پر لکھا جاتا ہے۔
مثال کے طور پر، صف A کی لمبائی کو Length[A] کے طور پر لکھا جاتا ہے؛ مربع بریکٹ کا کیا مطلب ہے اس کا تعین سیاق و سباق سے ہوتا ہے (ایک متغیر کسی صف کو ظاہر کرتا ہے، یا کوئی شے اس کے اجزاء کے اعداد و شمار کا اشارہ ہے)۔ کسی بھی فیلڈ کے لیے y:=x تفویض کرنے کے بعد f برابری f[y]=f[x] مطمئن ہو جائے گی۔ اس بات کا تعین کرنا کہ آیا کوئی وصف ایک فنکشن، متغیر، یا کوئی اور چیز ہے سیاق و سباق کے مطابق کیا جاتا ہے۔
- ایک پوائنٹر کی خاص قدر NIL ہوسکتی ہے، جو کسی چیز کی طرف اشارہ نہیں کرتی ہے۔
- پیرامیٹرز قدر کے حساب سے پاس کیے جاتے ہیں: کہلائے گئے طریقہ کار کو پیرامیٹرز کی اپنی کاپی موصول ہوتی ہے؛ طریقہ کار کے اندر پیرامیٹرز میں تبدیلیاں باہر سے نظر نہیں آتیں۔ آبجیکٹ کو پاس کرتے وقت، اس آبجیکٹ سے متعلقہ ڈیٹا کا ایک پوائنٹر کاپی کیا جاتا ہے۔
public class Main {
public static void main(String[] args) {
int[] massif = {13, 3, 8, 1, 15, 2, 3, 7, 4};
System.out.print("Массив до сортировки: ");
for (int i = 0; i < massif.length; i++)
System.out.print(massif[i] + " ");
System.out.println("");
massif = sort(massif);
System.out.print("Массив после сортировки: ");
for (int i = 0; i < massif.length; i++)
System.out.print(massif[i] + " ");
}
public static int[] sort(int x[]) {
if (x.length == 1) //Рекурсия идет до тех пор, пока массив делится
return x;
else {
int half = (int) Math.floor(x.length / 2); //Разбиваем массив на 2 части
int halfFirst[] = new int[half]; //1 часть, пустой массив
int halfSecond[] = new int[x.length - half]; //2 часть, пустой массив
for (int i = 0; i < x.length; i++) { //Заполняем новосозданные массивы значениями
if (i < half)
halfFirst[i] = x[i];
else
halfSecond[i - half] = x[i];
}
halfFirst = sort(halfFirst); //Рекурсия
halfSecond = sort(halfSecond); //Рекурсия
x = sortNext(halfFirst, halfSecond); //Отправляем заполненные значениями массивы в следующий метод
return x;
}
}
public static int[] sortNext(int x[], int y[]) {
int c[] = new int [x.length + y.length]; //Создаем результирующий массив из суммы длин массивов из аргументов метода
int a = 0, b = 0;
for (int i = 0; i < x.length + y.length; i++) { //Сравниваем массивы, меняем местами элементы, заполняем новосозданный массив
if (a == x.length) {
c[i] = y[b];
b++;
}
else if (b == y.length) {
c[i] = x[a];
a++;
}
else if (x[a] > y[b]) {
c[i] = y[b];
b++;
}
else {
c[i] = x[a];
a++;
}
}
return c;
}
}
GO TO FULL VERSION