
Профессия программиста становится все более востребованной и выходит на международный уровень. Специалисту с богатым опытом и высокой квалификацией просто необходимо знать английский язык, причем не на обычном туристическом уровне, а со всеми терминами и профессиональными выражениями. Эти знания будут весомым преимуществом при собеседовании в крупную иностранную организацию и позволит повысить свой уровень.
Зачем программисту учить английский язык?
Английские слова активно используются в программировании даже в России — большинство терминов имеют иностранное происхождение. Программисты обращаются за помощью в изучении английского по нескольким причинам:
- Открыть новые возможности карьерного роста, переехать жить и работать в другую страну за более высокую зарплату.
- Свободно читать и смотреть информационные ресурсы — книги, статьи, блоги, обсуждения на форумах, ждать перевода которых может быть долго и невыгодно.
- Свободно общаться с иностранными клиентами и коллегами, расширяя свои возможности.
- Саморазвиваться — уверенное владение узкопрофильным английским языком выгодно выделяет резюме программиста среди других соискателей и дает возможности для новых знакомств и путешествий.
- Ориентироваться в технической документации — свободно читать инструкции к любому оборудованию.
У каждого ученика своя причина или даже несколько. В профессии программиста не обойтись без знания хотя бы базового английского — все коды и программы написаны именно на нем.
Какие проблемы могут возникнуть
В процессе обучения можно столкнуться с некоторыми трудностями:
- мало возможностей практиковать разговорный английский, в основном общение происходит по переписке;
- узкая специализация терминов, которые значительно отличаются от базового разговорного языка;
- множество исключений из правил;
- большое количество синонимов и значений слов, которые легко перепутать между собой.
Прежде чем изучать английский язык для программирования, нужно освоить основы языка: общеупотребляемые фразы, основные принципы построения предложений и т.д. Если ученик начинает с нуля, обучение займет в разы больше времени и сил.
Как выучить английский
Первое, что нужно сделать — поставить цель. Она должна мотивировать к изучению английского языка и быть достижимой. Наиболее эффективным будет поставить одну большую цель и несколько маленьких задач для ее достижения, установив для них оптимальные сроки. Если поставить только глобальную цель, можно не заметить прогресса в обучении и опустить руки, не достигнув работы мечты.
Не менее важно выучить лексику по самым актуальным темам в сфере программирования, а именно:
- software;
- SEO;
- web-design;
- IT project management;
- IT slang;
- networking.
Также не стоит забывать о регулярности занятий. Обучению нужно выделять время каждый день, эффект от ежедневных 30-минутных занятий будет более явным, чем от 2-часовых раз в неделю. Можно положить карточки с нужными терминами на рабочем месте, повесить их на холодильник, слушать полезные подкасты по дороге на работу и т.д. Для новичков рекомендуется 6 minute English от BBC, более продвинутым ученикам можно перейти на подкасты про программирование — CodeNewbie для начинающих разработчиков, или Developer Tea, где выпуски длятся по десять минут и хорошо усваиваются.
Еще один важный шаг — найти общение. Не бойтесь делать ошибки, начните общаться с иностранными коллегами, которые помогут вам найти свои слабые места и подтянуть навыки владения английским языком. Общаясь с другими программистами, вы научитесь понимать разговорную речь с профессиональными терминами даже в быстром темпе, запомните конструкции для предложений и часто употребимые в работе фразы.
Где взять практику?
В изучении английского языка, как и любого другого, очень важно регулярно практиковаться. Чтобы полностью погрузиться в эту атмосферу, следуйте этим советам:
- Переключите все свои гаджеты на английский язык — телефон, компьютер и ноутбук. Так вы сможете запомнить основные термины из интерфейса.
- Оставляйте комментарии к полезным постам на крупных IT-ресурсах — это поможет научиться формулировать свои мысли и строить предложения со специальными терминами и понятиями.
- Смотрите тематические сериалы и фильмы на языке оригинала (можно с субтитрами), слушайте любимые песни и смотрите их перевод.
- Участвуйте в различных вебинарах и конференциях с иностранными программистами, внимательно изучайте их речь и заводите новые знакомства.
Полезные ресурсы для изучения английского языка
Учить технический английский язык сложно, поэтому процесс нужно сделать максимально комфортным и доступным. Для этого мы собрали лучшие ресурсы для прокачки своих языковых навыков:
- Подкасты:
- Herding Code
- Software Engineering Radio
- Programming Throwdown
- Floss Weekly
- This Developers Life
- Форумы:
- Stack Overflow
- Stack Exchange
- DevShed Forum
- Reddit Programming
- Блоги:
- DWB
- WebDevBlog
- Cats Who Code
- Code Wall
- Future Processing
- Ray Wenderlich
- Сериалы и фильмы:
- Кремниевая долина (Silicon valley)
- Мистер Робот (Mr. Robot)
- Социальнаясеть (The Social Network)
- Черное зеркало (Black Mirror)
- Вполе зрения (Person of Interest)
- Выступления:
- Томас Суарез: 12-летний разработчик приложений
- Сергей Брин и Ларри Пейдж: как зарождался Google
- Джейн МакГонигал: игровая индустрия может сделать мир лучше
- Эрик Топол: беспроводное будущее медицины
- Кевин Келли: как развиваются технологии
Всеми этими ресурсами можно пользоваться с телефона или компьютера, им можно уделить время даже в рабочий перерыв или по дороге домой.
Основные термины для программиста
Мы собрали наиболее часто встречающиеся термины в сфере программирования:
- abbreviation — аббревиатура. Например, The abbreviation ’RAM’stands for Random Access Memory (аббревиатура ОЗУ обозначает «оперативное запоминающее устройство»);
- analysis — анализ, изучение чего-то;
- appliance — устройство или инструмент для выполнения какой-либо задачи;
- application (или software application) — программноеприложение;
- arise — возникнуть, случиться. Обычно употребляется, когда говорится о проблемах или форс-мажорах. Например, Problems may arise when trying to request data from a remote web service (при запросе данных от удаленного веб-сервиса могут возникнуть проблемы);
- available — доступный, имеющийся;
- background — предыстория, употребляется при разговоре о профессиональном опыте;
- certification — сертификат;
- chief — начальник, руководитель;
- common — распространенный;
- compatible — совместимый, употребляется, когда говорят о совместимости программ или технического оборудования;
- database — база данных, где хранится информация;
- deal — сделка;
- develop — разрабатывать (программное обеспечение);
- drawback — недостаток какого-то программного продукта;
- efficient — эффективный (с высоким КПД);
- enterprise — предприятие, организация;
- environment — среда, обстановка;
- equipment — оборудование;
- expertise — компетентность в какой-то отрасли;
- gadget — гаджет, цифровое устройство;
- implement — реализовывать;
- increase — увеличивать;
- install — устанавливать программное обеспечение;
- instruction — инструкция;
- integrate — интегрировать;
- latest — последний, новейшая версия;
- low — низкий;
- maintain — поддерживать. Например, A poorly maintained website may kill your business (веб-сайт, который не поддерживается, может нанести непоправимый ущерб вашему бизнесу);
- matrix — матрица;
- outsource — провести аутсорсинг;
- oversee — курировать, руководить каким-либо проектом;
- prevail — превалировать, преобладать;
- promote — продвигать, делать рекламу;
- remote — удаленный;
- research — исследование, поиск нужной информации;
- resource — ресурс, сайт;
- simultaneous — одновременный;
- solve — решать. Например, How do I solve a sound quality problem when uploading to Youtube? (Как мне решить проблему с качеством звука при загрузке на Youtube?);
- sophisticated — сложный, «продвинутый»;
- specifications — спецификация;
- substantial — существенный, весомый;
- sufficient — достаточный;
- suitable — подходящий, способный удовлетворить потребности;
- task — задача;
- tool — программный инструмент;
- vendor — поставщик.
В ходе изучения технического английского придется не только выучить новые слова, но и освоить навыки — писать деловые письма, составлять резюме, правильно предоставлять свои услуги, общаться с клиентами и руководством.
Кроме того, для успешной работы в команде с иностранными коллегами, нужно знать названия их должностей в компании:
- Software Developer, Computer Programmer — разработчик программного обеспечения, создает приложения и программы;
- Computer and Information Research Scientist — исследователь в области программирования.
- Computer System Analyst — системный аналитик, занимается созданием требований для программных продуктов.
- Computer Network Architect — сетевой архитектор, создает единые корпоративные сети для предприятий.
- Web Developer — разработчик сайтов.
- Database Administrator — администратор базы данных, отвечает за хранение информации и ее защиту от взлома.
- Network and Computer System Administrator — системный администратор организации.
- Graphic Designer — создает графику для создаваемых компанией программных продуктов и сайтов.
- Software Tester, Quality Assurance Person или QA — тестировщик программногообеспечения.
- Technical Writer — создает инструкции и описание для программных продуктов.
- Computer Support Specialist — отвечает на вопросы пользователей и помогает им решить проблемы с работой программного продукта.
Знание всех этих терминов поможет вам произвести положительное впечатление на собеседовании, быстро адаптироваться в новом коллективе и легко общаться с иностранными клиентами, понимать их запросы. Изучайте английский язык для программирования, развивайтесь и переходите на новый профессиональный уровень.
