Would you like to sign out?

Select Country

  • Afghanistan English
  • Albania English
  • Algeria English
  • American Samoa English
  • Andorra English
  • Angola English
  • Anguilla English
  • Antarctica English
  • Antigua and Barbuda English
  • Argentina Español
  • Armenia English
  • Aruba English
  • Australia English
  • Austria English
  • Azerbaijan English
  • Bahamas English
  • Bahrain English
  • Bangladesh English
  • Barbados English
  • Belarus English
  • Belgium English
  • Belize English
  • Benin English
  • Bermuda English
  • Bhutan English
  • Bolivia Español
  • Bosnia and Herzegovina English
  • Botswana English
  • Bouvet Island English
  • Brazil Español
  • British Indian Ocean Territory English
  • British Virgin Islands English
  • Brunei English
  • Bulgaria English
  • Burkina Faso English
  • Burundi English
  • Cambodia English
  • Cameroon English
  • Canada English
  • Cape Verde English
  • Caribbean Netherlands English
  • Cayman Islands English
  • Central African Republic English
  • Chad English
  • Chile Español
  • Christmas Island English
  • Cocos (Keeling) Islands English
  • Colombia Español
  • Comoros English
  • Congo English
  • Cook Islands English
  • Costa Rica Español
  • Côte d’Ivoire English
  • Croatia English
  • Cuba Español
  • Curaçao English
  • Cyprus English
  • Czech Republic English
  • Democratic Republic of the Congo English
  • Denmark English
  • Djibouti English
  • Dominica English
  • Dominican Republic Español
  • Ecuador Español
  • Egypt English
  • El Salvador Español
  • Equatorial Guinea English
  • Eritrea English
  • Estonia English
  • Ethiopia English
  • Falkland Islands English
  • Faroe Islands English
  • Fiji English
  • Finland English
  • France English
  • French Guiana Español
  • French Polynesia English
  • French Southern Territories English
  • Gabon English
  • Gambia English
  • Georgia English
  • Germany English
  • Ghana English
  • Gibraltar English
  • Greece English
  • Greenland English
  • Grenada English
  • Guadeloupe Español
  • Guam English
  • Guatemala Español
  • Guernsey English
  • Guinea English
  • Guinea-Bissau English
  • Guyana English
  • Haiti Español
  • Heard Island and McDonald Islands English
  • Honduras Español
  • Hong Kong English
  • Hungary English
  • Iceland English
  • India English
  • Indonesia English
  • Iran English
  • Iraq English
  • Ireland English
  • Isle of Man English
  • Israel English
  • Italy English
  • Jamaica English
  • Japan 日本語
  • Jersey English
  • Jordan English
  • Kazakhstan English
  • Kenya English
  • Kiribati English
  • South Korea 한국어
  • Kuwait English
  • Kyrgyzstan English
  • Laos English
  • Latvia English
  • Lebanon English
  • Lesotho English
  • Liberia English
  • Libya English
  • Liechtenstein English
  • Lithuania English
  • Luxembourg English
  • Macau English
  • Madagascar English
  • Malawi English
  • Malaysia English
  • Maldives English
  • Mali English
  • Malta English
  • Marshall Islands English
  • Martinique Español
  • Mauritania English
  • Mauritius English
  • Mayotte English
  • Mexico Español
  • Micronesia English
  • Moldova English
  • Monaco English
  • Mongolia English
  • Montenegro English
  • Montserrat English
  • Morocco English
  • Mozambique English
  • Myanmar English
  • Namibia English
  • Nauru English
  • Nepal English
  • Netherlands English
  • New Caledonia English
  • New Zealand English
  • Nicaragua Español
  • Niger English
  • Nigeria English
  • Niue English
  • Norfolk Island English
  • Northern Mariana Islands English
  • Norway English
  • Oman English
  • Pakistan English
  • Palau English
  • Palestine English
  • Panama Español
  • Papua New Guinea English
  • Paraguay Español
  • Peru Español
  • Philippines English
  • Pitcairn Islands English
  • Poland English
  • Portugal Español
  • Puerto Rico Español
  • Qatar English
  • Réunion English
  • Romania English
  • Russia English
  • Rwanda English
  • Saint Barthélemy Español
  • Saint Helena English
  • Saint Kitts and Nevis English
  • Saint Lucia English
  • Saint Martin Español
  • Saint Pierre and Miquelon English
  • Saint Vincent and the Grenadines English
  • Samoa English
  • San Marino English
  • Sao Tome and Principe English
  • Saudi Arabia English
  • Senegal English
  • Serbia English
  • Seychelles English
  • Sierra Leone English
  • Singapore English
  • Sint Maarten English
  • Slovakia English
  • Slovenia English
  • Solomon Islands English
  • Somalia English
  • South Africa English
  • South Georgia English
  • South Sudan English
  • Spain Español
  • Sri Lanka English
  • Sudan English
  • Suriname English
  • Svalbard and Jan Mayen English
  • Eswatini English
  • Sweden English
  • Switzerland English
  • Syria English
  • Taiwan English
  • Tajikistan English
  • Tanzania English
  • Thailand English
  • Togo English
  • Tokelau English
  • Tonga English
  • Trinidad and Tobago English
  • Tunisia English
  • Turkey English
  • Turkmenistan English
  • Turks and Caicos Islands English
  • Tuvalu English
  • U.S. Virgin Islands English
  • Uganda English
  • Ukraine English
  • United Arab Emirates English
  • United Kingdom English
  • United States of America English
  • U.S. Minor Outlying Islands English
  • Uruguay Español
  • Uzbekistan English
  • Vanuatu English
  • Vatican City English
  • Venezuela Español
  • Vietnam English
  • Wallis and Futuna English
  • Western Sahara English
  • Yemen English
  • Zambia English
  • Zimbabwe English
  • Åland Islands English
  • East Timor English
  • Netherlands Antilles English
  • Serbia and Montenegro English
  • North Macedonia English
  • Timor-Leste English
Geotechnical

Why Civil Engineers Need to Know How to Code

Table of Contents Click the table of contents for details.

 

Introduction

 

Why Young Civil Enginners Should Learn to Code

Why Young Civil Enginners Should Learn to Code: https://youtu.be/afX-UpY7VAc

 

"With AI doing coding for us, there's no way to avoid coding!"

 

In the winter of 2017, as a first-year employee, I was fortunate to have the opportunity to work at the London office for a month. Perhaps that month shaped me who is writing this article now. I always thought I had followed a prestigious path. However, working with engineers in London who operated on an international level made me realize a sort of barrier. (Later, I found out that they also graduated from prestigious European universities.) At the same time, I realized, "Ah, that's the path I need to take!"

 

(Left) Lunch meeting at the London office (Right) Fish and chips after work(Left) Lunch meeting at the London office (Right) Fish and chips after work

 

Even after returning to Korea, I occasionally monitored how they worked at the headquarters (Denmark) or in London.

 

 

How many graduates from the Department of Civil and Environmental Engineering at Seoul National University work in design firms?

 

Among the seniors and juniors I know, there are only two. I am one of them, and the other is a colleague I persuaded to join the same company. Even outside of Seoul National University, it is said that it is hard to find young engineers in design firms these days.

 

 

Why do young engineers avoid design firms so much?

 

I think it's because the workload is intense compared to the low salary. Additionally, the intense workload isn't because they need to solve difficult and challenging problems, but because there's a lot of repetitive work. This makes it hard for the MZ generation (Millennials and Generation Z) to accept and find motivation.

 

If my reasoning is correct, there are three solutions:

 1. Salaries match those of construction firms

 2. Workload intensity decreases to match the salary

 3. The nature of the work becomes more interesting and challenging

 

Can the company suddenly raise salaries or reduce the workload? Can we invest time to tackle more challenging tasks? I'm not sure. However, there is something engineers can do right away to achieve these three goals.

 

That is coding.

 

© ThisisEngineering RAEng, source Unsplash© ThisisEngineering RAEng, source: Unsplash

 

Domestic design firms mainly handle design tasks using Excel. While Excel is quite Excellent on its own and coding is possible using VBA, I suggest using coding languages like Python or MATLAB for work.

 

If you've never tried coding and think it sounds foreign, don't worry. I personally don't recommend taking coding courses just to learn coding. While courses can build a solid foundation, they are inefficient. The fastest way to learn is by writing code that can be applied directly to your work.

 

Which coding language should you use? Personally, I recommend Python. First, Python is free. You can use it anytime without worrying about licenses. It can also be used on personal computers. Additionally, it is widely used by engineers abroad.

 

COWI has an online community for employees, and there are over 800 members in the Python community (compared to about 140 in the MATLAB community). That's why I switched from MATLAB to Python.

 

© JohnsonMartin, source Pixabay© JohnsonMartin, source: Pixabay

 

So, what kind of code should you start with?

 

Civil engineers use limited codes in their work, so we can almost certainly implement the features we want. Additionally, someone worldwide has likely attempted it, encountered problems, and posted questions, with experts providing answers and sample codes. You can find the code you need just by searching Google.

 

But recently, even this has become unnecessary.

This is thanks to ChatGPT.

 

© Levart_Photographer, source Unsplash© Levart_Photographer, source: Unsplash

 

Previously, you had to search in English for the features you wanted, find the most similar question, and choose the most appropriate answer. Now, you can just tell ChatGPT the functionality you need, and it will generate the Python code for you.

 

At Seoul National University, a structural research lab assigns graduate students to write Gaussian elimination algorithms in Fortran. Until recently, students had to understand Gaussian elimination, write the algorithm, learn Fortran syntax, and refer to senior students' codes to complete the assignment. Now, you can just ask ChatGPT to do it, and it takes 3 seconds. While understanding Gaussian elimination and algorithm writing is crucial, learning the syntax of a specific language is no longer necessary. In an era where AI can do the coding for us, there's no way to avoid coding ourselves!

 

Fortran code for Gaussian elimination written by chatGPTFortran code for Gaussian elimination written by chatGPT

 

I first incorporated coding into my work while preparing appendices for structural calculation reports.

 

Video explaining the use of coding in structural calculation reportVideo explaining the use of coding in structural calculation report (https://youtu.be/x0_8wUFDmho)

 

It was a relatively simple task of inputting values into Excel and outputting and merging them into PDFs, but the volume was massive. Two engineers were instructed to finish it within two days. However, I had to leave work early because I had a child who was not even a year old at the time, so I decided to use MATLAB, which I hadn't used since graduate school.

 

As a result, I completed in two hours what would have taken two people two days. I left work on time, and the company saved 30 hours (8 hours x 2 people x 2 days - 2 hours = 30 hours).

While it didn't take long for the code to run, it took some time to write the code since it had been a while. However, having written MATLAB code then made it easier and faster to switch to Python later, so I consider it time well spent.

 

After enjoying success with the appendices, I challenged myself to code for MIDAS SW modeling.

It was a relatively simple and modular structure, and automating the modeling through coding seemed like it would save time. Eventually, it took a day to model one section. (Manually, it would have taken at least three days, if not a week.)

 

The MIDAS modeling code was more complex than the appendices code, so I invested about a month. (Thankfully, the project manager allocated time during work hours for coding.) However, since I had to deliver results, I also spent personal time coding on weekends. Some might think, "Why use personal time for work?" But I believed it would help me leave work on time when busy and benefit my career.

In other words, I invested time for my benefit. The experience revealed problems I wouldn't have noticed otherwise and provided valuable lessons.

 

 

Why You Should Learn to Code

 

Returning to the three solutions for avoiding design firms:

 1. Salaries match those of construction firms

 2. Workload intensity decreases to match the salary

 3. The nature of the work becomes more interesting and challenging 

 

First, coding won't immediately increase your salary. But as the company saves time and earns more money, engineers' treatment should improve.

 

Secondly, the workload intensity will surely decrease. Computers, which are much faster and more accurate than us, will handle tasks. Personally, coding made the work more challenging and enjoyable, and the sense of achievement when my code worked as intended made the job more fun.

 

Thus, coding is the only practical way to achieve these three goals and revive the struggling design firms.

 

Some might wonder why an individual is so keen on solving the aversion to design firms. I believe that improving the field and company I belong to will benefit me in the long run more than just focusing on my success. In conclusion, it’s a method I thought of purely for my benefit.

 

Currently, I have been incorporating coding into my work for over a year and am undertaking new projects using Python.

 

Shear check Python code for girdersShear check Python code for girders

 

I'm advocating for using Python among the young engineers at our company, but it still feels a bit lonely.

I hope many young engineers and future engineers reading this on MOTIVE will challenge themselves with coding, which is not as difficult as it seems.

 

 

Topics

#Case Study
#Design Automation

#Civil Engineering
#Structural Engineering

#MOTIVE

 

 

About the MOTIVATOR
KilHo Choi
Structural Engineering Specialist COWI Korea, 8 years of experiences

ENFP(Extroverted, Intuitive, Feeling and Perceiving) Engineer striving for health, family, and freedom through optimization from a lifelong perspective.

 

It has been over a year since I integrated coding into my work, and I am currently using Python for new projects. Through my posts, I hope many engineers and students aspiring to be engineers will realize that challenging themselves with coding is not as difficult as they may think.

 

Youtube: GilTube_ENFP_Engineer

 

👉 Learn more about the editor (click)

 

※ Click on the keywords below 'Topics' to view related content.

Subscribe to Newsletter

Catch the weekly engineer news!

What you may
also like