Skip to main content
8 answers
9
Updated 2285 views

What does a software engineer do on a day to day basis?

I want to be a software engineer. #engineer #software #software-engineering

+25 Karma if successful
From: You
To: Friend
Subject: Career question for you

9

8 answers


3
Updated
Share a link to this answer
Share a link to this answer

Eric’s Answer

Best of the Village

It varies hugely, depending on the industry (a game developer might have very different responsibilities from someone who works at an ISP like Comcast or Verizon, for example), and depending on the team of people they are working with.


For me, on any given day I'm usually in the middle of improving an existing piece of software. Most of my projects take multiple days to weeks to complete. Today, I am just finishing up making a small change that a customer who uses the program I work on asked for. I am also adding a new ability to a program that I wrote over the past year. Finally, I am working with another software engineer to make a plan for how we're going to clean up a very messy piece of code over the next week or so. This last one means writing a document describing "Here's what we hope to accomplish, here's how we think we're going to approach it, and here's what might go wrong." It isn't writing code, but it's still an important part of the process.

3
0
Updated
Share a link to this answer
Share a link to this answer

Sean’s Answer

Depending on the type of software engineer you would like to become (databases, web/mobile development, gaming, etc.) and the industry you would like to work in (Healthcare, Finance, Sales, Gaming, etc.) it could be a wide variety of tasks that you could perform. Almost all of them will involve coding in any of a wide range of programming languages like Java, .NET, Ruby, Python, SQL, etc. You will be taking software functionality requirements written by product managers or business analysts and turn those requirements into living, breathing software. This software could be a mobile app on your phone, a web page on your computer's browser or back-end software that really isn't visible to the end user (the person using the software). Then you will be working closely with your Quality Assurance team who will help test your software and make sure it works as expected and defined by the requirements before it is published to a production system for use by end-users. All of these tasks will most like involve working on your computer and some sort of virtual interaction (especially with the days of COVID here recently). These virtual methods could be video chat on Zoom or Teams or something similar, chatting via Slack, Teams or other methods or conference calls. I hope this helps.
0
0
Updated
Share a link to this answer
Share a link to this answer

Daniela’s Answer

Hi Muhit,


Tasks and Duties



  • Modify existing software to correct errors, to adapt it to new hardware or to upgrade interfaces and improve performance.

  • Design and develop software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.

  • Consult with engineering staff to evaluate interface between hardware and software, develop specifications and performance requirements and resolve customer problems.

  • Analyze information to determine, recommend and plan installation of a new system or modification of an existing system.

  • Develop and direct software system testing and validation procedures.

  • Direct software programming and development of documentation.

  • Consult with customers and/or other departments on project status, proposals and technical issues such as software system design and maintenance.

  • Advise customer about, or perform, maintenance of software system.

  • Coordinate installation of software system.

  • Monitor functioning of equipment to ensure system operates in conformance with specifications.

  • Store, retrieve, and manipulate data for analysis of system capabilities and requirements.

  • Confer with data processing and project managers to obtain information on limitations and capabilities for data processing projects.

  • Prepare reports and correspondence concerning project specifications, activities and status.

  • Evaluate factors such as reporting formats required, cost constraints, and need for security restrictions to determine hardware configuration.

  • Supervise and assign work to programmers, designers, technologists and technicians and other engineering and scientific personnel.

  • Train users to use new or modified equipment.

  • Utilize microcontrollers to develop control signals, implement control algorithms and measure process variables such as temperatures, pressures and positions.

  • Recommend purchase of equipment to control dust, temperature, and humidity in area of system installation.

  • Specify power supply requirements and configuration.


http://www.oceancareers.com/2.0/career_tasks.php?career_id=70


Have a great career!

0
0
Updated
Share a link to this answer
Share a link to this answer

Shashank’s Answer

Hello Muhit,

Software Developers research, design, develop, and test operating systems-level software, compilers, and network distribution software for medical, industrial, military, communications, aerospace, business, scientific, and general computing applications. Set operational specifications and formulate and analyze software requirements. May design embedded systems software. Apply principles and techniques of computer science, engineering, and mathematical analysis. They also modify existing software to correct errors, to adapt it to new hardware, or to upgrade interfaces and improve performance.

Other tasks include:

Monitor functioning of equipment to ensure system operates in conformance with specifications.
Develop or direct software system testing or validation procedures.
Direct software programming and development of documentation.
Consult with customers or other departments on project status, proposals, or technical issues, such as software system design or maintenance.
Analyze information to determine, recommend, and plan installation of a new system or modification of an existing system.
Consult with engineering staff to evaluate interface between hardware and software, develop specifications and performance requirements, or resolve customer problems.

Shashank recommends the following next steps:

https://www.owlguru.com/career/software-developers-systems-software/job-description/
0
0
Updated
Share a link to this answer
Share a link to this answer

Mark’s Answer

This can vary depending on the level of the tester as well as the role they play in their team. Also the company they work for, but here's an example of my day before Covid:

I meet with my team (not a test group but team of developers) for morning scrum or project update meeting. If were early in development, I work closely with development and business to assure everyone's on the same page when it comes to requirement gathering. If requirements have already been spelled out, I make sure the development team adheres to the design specifications and test small drops to the QA environment. I'm summarizing a lot so forgive me, honestly most of the work is done during prep, requirements gathering, feature breakdowns, test plan and test case creation. It really depends on what phase of whatever methodology your company uses. Like I mentioned earlier every company operates differently, for example, despite me being a tester, I participate in development mobbing session (Developers team up and each participant takes a turn working through the code while being guided by another developer) and I also work with developers during implementation phase. This may not be a requirement at another company.
0
0
Updated
Share a link to this answer
Share a link to this answer

Hanish’s Answer

Software Engineers must identify the core functionality that users need from software programs. software engineers must also determine user requirements that are unrelated to the functions of the software, such as the level of security and performance needs. They design the program and then give instructions to programmers, who write computer code and test it. If the program does not work as expected or if testers find it too difficult to use, software engineers go back to the design process to fix the problems or improve the program. After the program is released to the customer, a software engineer may perform upgrades and maintenance.
0
0
Updated
Share a link to this answer
Share a link to this answer

Jimil’s Answer

On a day to day basis, the company says "code a class or classes that make a textbox or make a server or sends a message using these certain libraries" and then you find the api documentation and watch some youtube videos explaining the api methods. then you use these methods or find someone on stack overflow that already used them correctly and then you change their code to fit your needs.

The day-to-day tasks of a software engineer can vary depending on the specific job and the company, but in general, they involve writing, testing, and maintaining software code. Here is a list of some common tasks that software engineers may perform on a day-to-day basis:

Writing code: Software engineers write, test, and maintain software code in one or more programming languages, such as C++, Python, or Java. They may work on a wide range of software products and applications, such as operating systems, mobile apps, websites, and more.

Collaborating with other engineers: Software engineers often work in teams, and they need to be able to communicate effectively with other engineers, designers, project managers, and other stakeholders to plan and deliver software projects.

Debugging and testing: Software engineers will also be responsible for debugging and testing their code, they will have to find and fix any bugs or errors in their code and make sure that it meets the required specifications and standards.

Participating in code reviews: Engineers often have to review the code of their peers and other team members to ensure the quality and maintainability of the codebase.

Learning new technologies and tools: Software engineers must be willing to continuously learn new programming languages, tools, and technologies in order to stay current and be able to take on new challenges.

Documenting the code: Engineers are responsible for documenting the code, this can include writing comments, creating diagrams, and documenting best practices and design patterns.

Participating in meetings: Software engineers may participate in meetings with other members of the development team, such as project managers and designers, to discuss project status, goals, and requirements.

Keeping up-to-date with industry standards: Engineers also have to keep track of new industry standards and advancements that may affect their work and adapt accordingly.

It's worth noting that this is not an exhaustive list and other tasks and responsibilities may vary depending on the company, the project, the team and the role of the software engineer.

0
0
Updated
Share a link to this answer
Share a link to this answer

Niteesh’s Answer

On a daily basis, Software Developers direct software programming and development of documentation. They monitor functioning of equipment to ensure system operates in conformance with specifications.

A typical day for a software developer look like this:

Manage information technology projects or system activities.
Monitor computer system performance to ensure proper operation.
0