Agility, Java programming, New technologies and more…
  • rss
  • Home
  • Management
  • Agile Programming
  • Technology
  • Linux
  • Event
  • Android app
  • Contact
  • About the author
  • English
  • Francais

Computing jobs simplified overview

Fabian Piau | Friday September 6th, 2013 - 07:40 PM
  • Click to print (Opens in new window) Print
  • Click to share on X (Opens in new window) X
  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on WhatsApp (Opens in new window) WhatsApp

 Version française disponible

Grandma is learning Linux

If Internet and its use have become embedded in our everyday life (topic research, email, weather forecast, online shopping, social networks…), all the professions behind the scenes are often unknown or misunderstood by the general public (except for this grandma maybe…).

In France, in Belgium and probably in many other countries, we can note that there is almost no communication on the computing industry and its related IT (Information Technology) professions. For me who is working in IT for years, it makes me laugh at first sight, but it is a pity this lack of awareness.

If you read my blog for some time, you should be aware that most of my articles are technical. This blog is therefore addressed to a very particular and limited audience. My articles are often difficult to understand or are simply uninteresting for most people.


Let’s do a tour of the current IT professions in a simple and pragmatic way. Normally, you should not find jargon or technical terms (I tried to do my best) and I will limit myself to the most common professions.


The pioneer professions

A developer?


The Developer

Also called programmer. Without developers, there is no software, they are building the essential pieces of the product! They develop, program, write code using a programming language. They use keywords defined by the language (often in English) to build sentences (called instruction or line of code), which form the source code that will be translated and interpreted by the machine (computer).
Developers are specialized in one or a few languages, but they can potentially adapt to others, the logic is usually similar. Developers don’t write 0 or 1 (binary language), it will be generated automatically by the computer.
Not everyone can be developer! Good developers do not write code stupidly, they must understand and master a lot of underlying concepts (memory management, performance, algorithms…) and have relevant skills (communication, autonomy, logic, synthesis…).

I don’t want to disappoint you, but the image of a coffee drinker geek with a long beard, wearing broken glasses, working exclusively between midnight and 6am and patching regularly the Linux kernel… (Phew I guess I am going a bit far here) is not true for many of them. The photo on the right is a fake, thankfully!


The Architect

Architects are experienced developers. They shape the software by deciding its foundations. For example, they recommend or choose:

  • The programming language to use for the software. A web language? A language specialized in mathematical computations? There are hundreds of programming languages available. The choice of the architect is influenced by the entire ecosystem revolving around the language (active community, many existing tools).
  • The tools suite that will assist the developers (because reinvent the wheel is not efficient).
  • The standards of development.
  • The project structure. Software is rarely a monolithic block and consists of several modules that communicate with each other. For example, a module to display pages on the screen, a module to manage the stored information, etc.

Architects can also do an audit on the code of existing software and make recommendations in case of evolutions (new feature, technical refactoring…).
They have a global vision of the product and may give support to developers by answering their questions and giving them advices.
Even more than the developer, it is crucial to stay informed of new technologies. Doing technology forecasting is essential, architects are passionate about their jobs.


The Designer

If the architect and the developer build the product, the designer gives it a visual look, a face. Also called User interface (UI) engineer, they create the corporate identity charter:

  • Color range
  • Font style
  • Graphics (logo, images…)
  • Screens and pages organization (buttons, texts and images location, etc.)

The designer can also participate in the product usability (screens sequence, accessibility, help, etc.). Indeed, a well designed software (rich user interface) can be a nightmare to use (poor user experience).

User experience (UX) engineer can be a full-time job. A dedicated UX engineer will exist rather on large projects when you can have thousands of users. The UX engineer will be involved occasionally and is working on several projects at the same time.


The Tester

As the name implies, the tester is responsible for testing the software.
They write test cases, execute them, trying to find all the bugs. Testers report all bugs they have found to the development team who will be in charge to fix them. Testers will test again to make sure bugs are now fixed. They are the last resort to prevent regressions (a feature that worked in version N but does not work anymore in the new version N + 1) and ensure that quality is sufficient to deliver the application to the client.
Tester as full-time job is for large projects where the risk is very important, for example, a banking application or an onboard space shuttle program. If the software that manage a little bakery store is starting to fail, there is no big deal, it is not the same as if all the transactions of a bank were rejected or if a plane crashes. This is why developers are in charge of the testing part on traditional management applications.
The advantage of dedicated testers is that they do not need to be technical, they only need to know the business and functional side of the project.

Big Bang Theory

The Operations Manager

If developers, architects and designers fashion the whole product, the operations manager is responsible for making it available to users. In the jargon, we say to deploy the software or application in production. The operations manager ensures that deployment procedures are written and are up to date, provides the ability to revert to the previous software version in case of problem with the new one. The operations manager monitors applications to ensure they are available and meet the clauses set out in the contract.

This role may evolve in the future with a new trend called “DevOps“(concatenation of “development” and “operations”) where the developer supports a part of this operational side. Furthermore, in the past, deployments happened a few times a year, now it is not surprising to deploy in production several times a week or even a day thanks to the use of automated procedures (see agile model below).


The Network and Infrastructure Engineer

The Network and Infrastructure engineer has several roles:

  • Ensure that the company network is working properly (internet, intranet…). A network that fails during 15 minutes can represent significant deadweight losses for the company.
  • Provide access to all tools for new employees (login, installation and configuration of workstations).
  • Manage and maintain the IT infrastructure on the site (inventory and maintenance of servers, computers, cables, seats, projectors, hard drives, setting up backups, etc.).

It is not always the same person who takes care of both the network and infrastructure. It will mainly depend on the size of the company.


The specialized professions

For larger projects, I have to mention two professions where the person is often qualified as technical expert. Avoid technical terms to describe them is a bit difficult, but I’ll try.

Big Bang Theory

The Database Administrator

Also called DBA (DataBase Administrator). Software manage information and data, when you close and reopen the software again, you will find your data back with the same state as before. All these data are stored somewhere, this place is called a database.
If the project is very large with hundreds of different data types, a dedicated administrator will be required to ensure the highest quality and availability of data. A DBA works on:

  • Data structure (an address cannot be stored in the same way as a date);
  • Consistency storage (compliance, no data duplication);
  • Access to the database (backups, redundancy solutions);
  • Etc.


The Security Administrator

If the application is available on the internet, that many users can access it at the same time and it contains sensitive data, it is essential to have a good level of security. I say “good” because a foolproof system does not exist.
We often see in the news some major websites that got hacked. There will always be flaws, but a security expert will improve the protection and discourage many of the hackers.
This requires good practices such as passwords encryption in the database, updating tools after a flaw discovery, etc.
The role can involve many other aspects such as training employees about security issues, implementing data backup strategy…


Management professions


The Project Manager

Actually, this term is very generic and can be adapted to all sectors. Thus, we also find project managers in IT. Contrary to previous professions, it is a non-technical position. Project managers manage the IT project globally.

  • They are in contact with clients and are responsible for understanding their needs. They write specifications used by the development team.
  • They plan and organize, ensuring that the project is delivered on time within budget.
  • They report key indicators to the direction and raise warnings if something is going wrong.
  • They act like a buffer between the client, the development teams and the management by centralizing all the communication.
  • They write the application’s user manual and can offer a training in order to help users mastering their new software.
  • Depending on the impact of the software, they can also do change management. For example, it will probably be necessary when an existing software used for years is going to be replaced.
  • They may also have some commercial responsibilities like answering to a Request For Proposal.

Some project managers are technical (a former developer for example), some are not at all (they know the functional and business side only). The developer will generally prefer technical project managers because they will be able to understand more easily whether a particular feature is simple to implement or not. Indeed, the translation from functional to technical will be more realistic resulting in a better workload estimates.
There are different types of project manager (Project assistant, Mono-Project manager, Multi-project manager, Project Director… and even Technical Project Manager) corresponding to different levels of responsibility where the number of projects and teams to manage increases.



In IT, you will find also:

  • Business managers that will increase the business potential by winning new projects thanks to their professional network.
  • All professions related to Human Resources.

I do not describe them in detail because they are well known and can be found in many sectors.


There are no boundaries clearly defined for IT professions


There are many titles that include several professions. For example, computing engineer is often multidisciplinary with different roles: developer, tester, analyst, database administrator… Analyst-developer, consultant are also kind of “tote bag” titles.

A network and infrastructure engineer can take responsibility in security as well. The boundaries between the different professions are often fuzzy.

You understand that it is very rare to be confined to a single function. Why? Simply because it depends on the size of the project and the allocated budget. A small project with a small budget will not necessarily need a dedicated designer, a dedicated tester… And developers can be adequate using existing tools to help them create something nice visually and tested enough. I am more oriented development, but I don’t think my blog is ugly visually (at least I hope).

It is very common for a project to have a team consisting of one project manager and a few developers.

Web professions

For software accessible from a web browser (called web application rather than software), it is common to prefix the professions with the keyword “web”. Web developer, Web Designer, Web Project Manager… Tasks and function are the same as for the pioneer professions, only the technologies and tools are different.

We also often heard about the Webmaster that is a title that does not mean much, but in general we know it because it exists since the Web creation. Normally, it should be used to designate a site administrator (in my case, I am the Webmaster of this blog).

Evolution

The explosion of the Internet in the 2000s has brought new IT jobs. Here are two specialized Web professions:


SEO (Search Engine Optimization) manager

Also called Web Optimizer. The goal is to make a website visible on the Internet to increase its number of visits. The Web Optimizer knows all the SEO and analysis methods (both technical and marketing) for your site to improve its ranking and make it appear in the top results of search engines.
In other words, if I type “Cheap flight” on Google, I want my site “Ryanair” to appear in the top 5 results. I’ll probably need one for my blog, so if you like this article, please share it…


The Community Manager

This profession was born with the emergence of online social networks (Facebook, Twitter, LinkedIn and so on). It is a very recent and marketing approach. CMs manage communities to convey a good image of the company and/or product.
They use various ways to do that. They may animate a Facebook page, manage a Twitter account, respond to questions from users on forums, etc. Their goal is to unite people and promote their communications.


Just as technology, IT professions are constantly evolving. Now, you should have a good idea of the current software jobs. I want to clarify professions oriented software because I did not focus on the hardware side which is not my area.


Agile professions

Actually, the list is not complete. There are other jobs, because if technology evolves, work methods too. Thus, for some years, we are witnessing the massive adoption of the agile model in the IT world.

Let’s give some explanation to understand what it is.

Agile and Waterfall

  • The Traditional model (called Waterfall) is a long sequence of phases: specification, development, testing and delivery. The client receives its software at the end of the whole cycle.
  • The Agile model provides a succession of short phases (iterative model). Somehow, a project consists of mini-projects and each mini-project can represent a feature in the application. A fortiori you are delivering the software regularly and the client can see its software getting richer as developments are keep going and can give feedback quickly.

With the agile model, new professions have emerged such as Agile Coach, Scrum Master, Product Owner. The purpose of this article was to describe the “main” professions in IT, so I will not go further on this agile topic. That said, it may be an idea for a new article, an agile jobs overview.

In the meantime, I hope that the IT world is less abstract and you will know more things about this topic.

Related posts

devoxxDevoxx UK 2018 – Day 2 DeveloperDeveloper, more than writing code androidList of my favourite Android apps springQCon London 2016 – Spring Framework 5 – Preview & Roadmap
Comments
6 Comments »
Categories
Management
Tags
computing, job, overview, simple
Comments rss Comments rss

How to improve yourself at work and in everyday life?

Fabian Piau | Friday June 21st, 2013 - 06:00 PM
  • Click to print (Opens in new window) Print
  • Click to share on X (Opens in new window) X
  • Click to share on LinkedIn (Opens in new window) LinkedIn
  • Click to share on Facebook (Opens in new window) Facebook
  • Click to share on WhatsApp (Opens in new window) WhatsApp

 Version française disponible

That’s a fact, our short-term memory is not very efficient. Perhaps are we able to remember a dozen things you have to do at the same time. Unfortunately, it is impossible to remember everything resulting in some stress caused by the fear of forgetting important things.

I attended a very interesting training given by Renaud Marly and introducing a bunch of good practices to help us in our daily tasks.

David Allen is the key figure of the Getting Thing Done (GTD) concept. His book “The art of stress free productivity” is the reference on this topic.

Getting things done

Make lists to capture your ideas

  • You can improve your list permanently
  • You can read it and decide to do
  • You can use it as a means of reporting
  • You trust these lists, you have written them
  • You no longer need to remember
  • You reduce your brain drain
  • You increase your sense of control
  • You unconsciously make your life easier
My todo list


Choose your tool

  • Use as much as possible a centralized tool to avoid losing control.
  • I don’t want to disappoint you by saying that there is no good universal tool, the “Holy Grail” note-taking tool will never exist. Formats can be different, it can be a traditional paper tool like a notebook and a pencil, an electronic tool like a simple text file, a mindmapping tool or a more complex and complete software tool like Evernote… Try them and if you are satisfied with one of these tools, it means that you have found it… You will find a list of applications at the end of this post.


Be simple

  • Keep your list as simple as possible. Avoid using:
    1. Subsections of subsection. A list with two levels is more than enough (outcome / actions).
    2. Several fonts with different sizes and colors. Your list will be too complicated.
  • This simplicity will allow you to be confident in your list by focusing on the essentials, content.


Other tips

  • It is not necessary, but remember to separate the actions from the outcomes:
    1. First level, outcome: deliverable, final result, decision, milestone
    2. Second level, actions: context, time, energy, priority


Email Working in an office, I work most of my time on a PC and my inbox is always open. Here are the best practices to manage your emails.


Manage interruptions

  • Turn-off email notifications, this will allow you to minimize your downtime and stay focus on your work.
    During a meeting, I guess you change your status to “Do not disturb” on your instant messaging application, here is a little bit the same.


Process all emails in one go

  • Do it a few times a day, 3 or 4 times.
  • Unless you work in a helpdesk service, it will be enough. In case of emergency, the person will call or visit you.
  • The worst thing that can happen is that you have configured the push email service on your mobile phone to receive a notification of new incoming email. If you are in this situation, ask yourself: why did I do that? What are the good reasons?


Apply the “2-minutes” rule

  • A rule to apply to every incoming email, three possible cases:
    1. Do it: If less than 2 minutes, process the email right now (read it, classify and store any attachments, do a quick check, reply if the sender is expecting your answer)
    2. Differ it: If you realize that it takes more than 2 minutes to process, flag it and put it in a todo-list
    3. Delegate it: You are expecting an action or reply of one of your addressee, use the “waiting for” rule (see below)
  • At the end, the goal is to have no more email to process, the famous “Inbox 0“.

Inbox 0

Apply the “waiting for” rule

  • Goal is to keep track of every action you have delegated, the list of emails you are waiting for a reply.
  • Some email clients allow you to use labels, in this case, create and apply a label “Waiting for”. If this is not the case, one trick is to send these emails with yourself in copy (bcc). A rule that you have previously created will take care to filter these messages, marking them as read and moving them in a special folder.


Pomodoro logo Also note the existence of the Pomodoro technique, a time management method which uses a kitchen timer to work during periods of 25 minutes. These periods are separated by short breaks (5 minutes). Goal is to speed up your productivity by keeping your concentration level at an optimal level.


What about me?

It is difficult to mix personal and professional parts of your life, we often need to use two different tools. I’m no exception to this rule.

Personal todo-list

I use a simple text file that I share on my various devices thanks to Dropbox. I have organized this file into 2 sections: the urgent things I have to do during the day or the week, and the less urgent and pending things I have to do during the month or the year.
The fact I use a simple text file is very important, it allows me to focus on the content only. Thus, I am not able to underline or put in bold sentences and that’s exactly what I want, I don’t want to waste time for that.

Professional todo-list

I use a classical notebook to write my different tasks. Actually, it is enough because I use Jira (a technical tool in relation to my job). Jira is an online bug tracker that allows you to create tasks you can assign, comment, prioritize, etc. From time to time, depending on the project and my team, I also use the famous agile task board with the three columns: todo, in progress, done. Each task corresponds to a post-it that I move from a column to another following its progress.

Professional inbox

I read my emails as soon as I received them, I did not turn off the notifications. If I’m busy, I can be very focused on my work and not so easy to disturb. Sometimes, I even no longer see the notifications on the screen.

Personal inbox

I look at it several times a day. These emails are less intrusive because I have to go to the webmail on my own to check my new incoming emails.


The last word

All these new habits are not so easy to start and some of them not very natural, but give it a try, persevere and stand firm, you will measure real progress.
Keep in mind that everyone has his/her own method, there is no standard or miracle one. A good technique for someone may not work for someone else.

What about you?
How do you organize yourself?

What about you?


Some tools available

  • Remember the milk
  • Todo.txt
  • Doit.im
  • Microsoft To Do
  • Sandglaz
  • Workflowy
  • Fargo.io
  • Evernote
  • FreeMind
  • Any.do

Related posts

alias emailWhy and how using an email alias? seo performance websiteThe best free and online tools for testing and optimizing an application or website kubernetesFlagger – Canary deployments on Kubernetes BotBot Attacks: You are not alone…
Comments
No Comments »
Categories
Management
Tags
best practices, email, gtd
Comments rss Comments rss
Page 2 of 41234
Download CarmaBlog App

RSS feeds

  • RSS feed RSS - Posts
  • RSS feed RSS - Comments

Most viewed posts

  • Changing the language in Firefox - 116,514 views
  • Using Google Forms / Drive / Docs to create an online survey - 64,609 views
  • FAQ – Online survey with Google Forms / Drive / Docs - 56,660 views
  • Customizing Gnome 3 (Shell) - 30,940 views
  • The meaning of URL, URI, URN - 18,543 views
  • Java EE & CDI vs. Spring - 16,039 views
  • Open Street Map, better map than Google Maps? - 16,002 views
  • Comparing NoSQL: Couchbase & MongoDB - 14,759 views
  • API, REST, JSON, XML, HTTP, URI… What language do you speak? - 13,809 views
  • First steps with Apache Camel - 13,780 views

Recent Comments

  • Fabian Piau on FAQ – Online survey with Google Forms / Drive / DocsOui, dans Google Forms, vous pouvez empêcher les p…
  • BENECH Fabien on FAQ – Online survey with Google Forms / Drive / DocsBonjour, J'ai crée 1 questionnaire via Forms,…
  • SANKARA TIDIANE on Free online MongoDB trainingJ'aimerai suivre
  • Pauline on FAQ – Online survey with Google Forms / Drive / DocsMerci Fabian, mais le but étant que nos clients pu…
  • Fabian Piau on FAQ – Online survey with Google Forms / Drive / DocsProbablement mais ces options sont en général paya…

Recent posts

  • How to write a blog post? At least my way! - 2 years and 10 months ago
  • Bot Attacks: You are not alone… - 4 years and 5 months ago
  • Flagger – Monitor your Canary deployments with Grafana - 5 years and 3 months ago
  • Flagger – Canary deployments on Kubernetes - 5 years and 4 months ago
  • Flagger – Get Started with Istio and Kubernetes - 5 years and 5 months ago
  • Expedia CoderDojo in London - 6 years and 2 months ago
  • Volunteering at Devoxx4Kids - 6 years and 5 months ago
  • A Java 11 migration successful story - 6 years and 9 months ago
  • Tips to make your WordPress website secure - 7 years and 3 days ago
  • Devoxx UK 2018 – Day 2 - 7 years and 4 months ago
  • Devoxx UK 2018 – Day 1 - 7 years and 4 months ago
  • Wise, Revolut and Monzo, a small revolution for travelers and expats - 7 years and 8 months ago
  • Autocomplete for Git - 8 years and 4 months ago
  • Swagger, the automated API documentation - 8 years and 7 months ago
  • Microservices architecture – Best practices - 9 years and 1 week ago
Buy me a coffee

Language

  • Français
  • English

Follow me!

Follow me on Linkedin
Follow me on Twitter
Follow me on Stackoverflow
Follow me on Github
Follow me on Rss
Link to my Contact

Email subscription

Enter your email address to receive notifications of new posts.

Tags

.net agile agility android bash best practices blog cache cloud computing conference continuous integration css developer devoxx docker eclipse extreme programming firefox flagger google helm hibernate istio java job jug kubernetes london mobile computing overview performance plugin programmer script security sharing society spring tdd test tool ubuntu windows wordpress

Links

  • Blog Ippon Technologies
  • Blog Publicis Sapient
  • Blog Zenika
  • Classpert
  • CommitStrip
  • Coursera
  • Le Touilleur Express
  • Les Cast Codeurs Podcast
  • OCTO talks !
  • The Twelve-Factor App

Categories

  • Event (15)
  • Linux (3)
  • Management (8)
  • Agile programming (29)
  • Technology (45)

Archives

  • December 2022 (1)
  • April 2021 (1)
  • June 2020 (1)
  • May 2020 (2)
  • July 2019 (1)
  • May 2019 (1)
  • December 2018 (1)
  • October 2018 (1)
  • June 2018 (1)
  • May 2018 (1)
  • January 2018 (1)
  • May 2017 (1)
  • March 2017 (1)
  • October 2016 (1)
  • April 2016 (2)
  • March 2016 (1)
  • November 2015 (1)
  • May 2015 (1)
  • February 2015 (1)
  • December 2014 (1)
  • November 2014 (1)
  • September 2014 (2)
  • August 2014 (1)
  • July 2014 (2)
  • June 2014 (1)
  • April 2014 (1)
  • March 2014 (1)
  • February 2014 (2)
  • January 2014 (1)
  • December 2013 (1)
  • November 2013 (1)
  • October 2013 (3)
  • September 2013 (5)
  • July 2013 (1)
  • June 2013 (1)
  • May 2013 (1)
  • April 2013 (1)
  • March 2013 (2)
  • February 2013 (1)
  • January 2013 (2)
  • December 2012 (2)
  • October 2012 (1)
  • September 2012 (1)
  • July 2012 (1)
  • May 2012 (1)
  • April 2012 (1)
  • March 2012 (1)
  • February 2012 (1)
  • January 2012 (2)
  • December 2011 (1)
  • November 2011 (2)
  • October 2011 (2)
  • September 2011 (1)
  • July 2011 (1)
  • June 2011 (2)
  • April 2011 (1)
  • March 2011 (1)
  • February 2011 (1)
  • January 2011 (2)
  • November 2010 (2)
  • September 2010 (1)
  • August 2010 (1)
  • July 2010 (1)
  • June 2010 (1)
  • May 2010 (1)
  • April 2010 (1)
  • March 2010 (1)
  • February 2010 (1)
  • December 2009 (1)
  • November 2009 (1)
  • October 2009 (2)
  • September 2009 (2)
  • August 2009 (3)
  • July 2009 (1)
  • June 2009 (2)
Follow me on Twitter
Follow me on Linkedin
Follow me on Stackoverflow
Follow me on Rss
Link to my Contact
Follow me on Github
 
Fabian Piau | © 2009 - 2025
All Rights Reserved | Top ↑