‘Super Programmer’ is what they called me when I was pursuing computer graduation. From college programming assignments to semester projects, I felt I did extreme coding with the best of the logic. Carrying this self-belief, I thought working in the industry should be a cakewalk. With shining armor (!), I was ready to take on the real world.

After spending excruciating time learning and working on some of the top-notch projects at Emergys, I felt that my idea of the natural world was too naïve. I felt like Buzz Lightyear from Toy Story! Thanks to great mentors at Emergys, I got a glimpse of what it means to do coding for business problems. Here is a list of differences between fairy-world academic learning and the real world of execution!

“Comfort zone is a nice place, but nothing ever grows there.”

During one of the projects, I had the straightforward task of connecting machines using sockets; I made it too complex by using the language I was comfortable with – JAVA. Methods and classes unnecessarily lengthened the task. It was so easy using Python! And this is how my journey of learning Python started.

Inspired by the Japanese philosophy of ‘Kaizen,’ which implies continuous improvement, I now sail above and across my comfort zone. In proposing a solution, the approach should define considering appropriate technologies rather than solely basing it on known technologies.

“Ink is better than the best memory! – Documentation is vital!”

As the black box is for planes, documentation is for software projects! Back in college, documentation was the last thing I did. Even if we did documentation, the validation could have been more present.

The first thing I learned at Emergys was the importance of documentation and its necessity in project evolution. It was such an eye-opener to go through the process of documenting the architecture, pseudo-codes, and flow of data in the tool. For one of the projects, I was a new entrant. Due to fantastic documentation and thanks to the pseudo codes and the architecture diagrams in place, it was such smooth sailing for me. I could pick up everything right away!

As I learn the golden rules of documentation daily, I can’t imagine working on any project without it.

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”

In the quest to make applications functional, using meaningful variable names and following coding standards always took a backseat during my college days. My whole happiness was solely dependent on executing the application successfully! In industry, it was not just about making code functional. I also learned how to write code adhering to coding standards, which can be contributed to and empowered by the whole team. The sincere realization is that you should develop a robust application that aligns with the functional requirements.

“To code is human; to debug is divine!”

While working on my first IOT-based assignment, I was supposed to build a rule evaluation engine for sensor data. I was able to make a system in less than the expected time. This worked in the best-case scenario, but it failed awfully during the first round of testing. It took me twice the time to debug the code than to write it to identify the bug.

As a beginner, I always needed to catch up on the trick of debugging the code. I relied on the first instance of the result. Now, I firmly believe that along with programming logic, debugging is an important skill to become a ‘Super Programmer’!
Along with the above points, the quality of the code, efficient planning and execution, and not trying to reinvent the wheel are a few more critical learning I had in the past few months at Emergys.

As they say, it is about the journey, not the destination. I am enjoying every bit of this quest to become better!

Related Posts

  • Orchestrate & Automate Your Business Process

    Orchestrate & Automate Your Business Process Workloads

    Orchestrate & Automate Your Business Process Workloads

    Workload Automation – The Next Big Thing In the world [...]

  • Achieve Hyperautomation with DigitalOps Toolbox

    Achieve Hyperautomation with DigitalOps Toolbox

    Achieve Hyperautomation with DigitalOps Toolbox

    Hyperautomation is the process of bringing together several components of [...]

  • Academic-vs.-Industrial-Software-Development

    Academic vs. Industrial Software Development

    Academic vs. Industrial Software Development

    ‘Super Programmer’ is what they called me when I was [...]

Emergys Blog

Recent Articles

  • Large Language Models

    Verticalization of Large Language Models (LLMs): Unlocking Specialized Potential with Emergys

    Verticalization of Large Language Models (LLMs): Unlocking Specialized Potential with Emergys

    Large Language models (LLMs) have transformed Natural Language Processing [...]

    Large Language models (LLMs) have transformed Natural Language Processing (NLP); however, their generalist nature can [...]

  • Migrating from Remedyforce to BMC Helix

    Enhance Your IT Service Management: Migrating from Remedyforce to BMC Helix

    Enhance Your IT Service Management: Migrating from Remedyforce to BMC Helix

    In today’s rapidly evolving business landscape, organizations must constantly seek [...]

    In today’s rapidly evolving business landscape, organizations must constantly seek ways to optimize their IT service [...]

  • Service Desk Automation

    Top Candidates for Service Desk Automation

    Top Candidates for Service Desk Automation

    Automation is not new to anyone. It is the foundation [...]

    Automation is not new to anyone. It is the foundation for any enterprise digitization. However, companies [...]