Mid-Level Software Engineer Job Description
Mid-Level Software Engineer Duties & Responsibilities
To write an effective mid-level software engineer job description, begin by listing detailed duties, responsibilities and expectations. We have included mid-level software engineer job description templates that you can modify and use.
Sample responsibilities for this position include:
Mid-Level Software Engineer Qualifications
Qualifications for a job description may include education, certification, and experience.
Licensing or Certifications for Mid-Level Software Engineer
List any licenses or certifications required by the position: AWS, CISSP, II, IAT, IA, SVD, DO-178C, BONUS, DOD, CISA
Education for Mid-Level Software Engineer
Typically a job would require a certain level of education.
Employers hiring for the mid-level software engineer job most commonly would prefer for their future employee to have a relevant degree such as Bachelor's and Master's Degree in Computer Science, Engineering, Mathematics, Physics, Science, Chemistry, Technical, Education, Computer Engineering, Software Engineering
Skills for Mid-Level Software Engineer
Desired skills for mid-level software engineer include:
Desired experience for mid-level software engineer includes:
Mid-Level Software Engineer Examples
Mid-Level Software Engineer Job Description
- Build, deploy and test with automation
- Collaborate effectively with cross-functional stakeholders including system architects, project managers, product owners and operations
- Perform troubleshooting of operational and integration issues
- Maintain the day to day operations for application and firewall related issues
- Add new features and capabilities in the firewall
- Update/create new manuals and design documents for any of the new features
- Work with clients in developing specifications
- Develop and write Specification and design documents
- Develop high quality software for our clients
- Work as a member of the development team
- Must be able to demonstrate competencies in data structures and algorithms
- Must have a genuine desire to develop software to solve unique problems
- Ability to obtain a Top Secret/SCI clearance is required
- Computer Science or Computer Engineering or Electrical Engineering degree
- Candidate must also be familiar with sound software engineering principles and methodologies
- Implemented Web Services (SOAP/WSDL or REST)
Mid-Level Software Engineer Job Description
- This shall involve line-by-line software source code review and lor tool based source code evaluation
- The evaluator shall be responsible for matching source code to specifications and design
- Build web applications using Microsoft .Net Framework 3.5
- Document status
- May provide leadership and/or direction to lower level employees
- Ability to Travel and work in a Navy Shipyard environment (up to 40%)
- Work with the latest and greatest Android libraries, architectures, and practices
- Ensure engineering excellence to deliver robust, secure, modular, and high performance apps
- Write and implement unit tests in Kotlin!
- Work on our internal SDK tools and services
- Experience with non-Microsoft systems (our products are cross-platform) is a plus
- Perform responsibly for the creation, implementation, and maintenance (including upgrades) of all tools utilized in our product development and delivery process
- Perform responsibly for automation of builds, and process improvements for multiple product lines
- Review, analyze, modify programming systems including encoding, testing, debugging and installing to support an organization's business applications
- Be responsible for the daily build and release operations of multiple key products, and communication with development, QA, Tech Support and Product Management
- Good computer science fundamentals and core object oriented programming skills
Mid-Level Software Engineer Job Description
- Performs constructive design and code reviews while mentoring junior developers
- Requirements analysis, design, development, test, documentation, licensing, troubleshooting, and user support
- The position includes taking requirements and technical design solution to software implementation and test
- Responsible for requirements analyses, design, code and unit test of software components using agile software development process
- Initial development will have single use, but the software must be robust for future applicability and evolvement
- This position will require frequent interaction with the electronics product group and subsystem engineering
- Job responsibilities will address all phases of the software development cycle – including requirements and interface definition, software development
- Must be able to interact with hardware engineers in the development of boot code, built in test and special test code down to the register and bit level of hardware
- Candidate should possess excellent integration and debugging skills in both hardware and software and be able to bridge the gap between other software and hardware developers in finding system solutions
- Experience developing verification and integration test plans and code for design verification, integration and manufacturing test
- Possess excellent oral and written communication skills, be ambitious and be willing to take ownership of what you work on
- Good Unix or Linux skills
- Good Java, Scala, Golang, C++ or other equivalent programming language experience
- Experience with Kafka and Storm
- Experience with virtual machines and cloud computing with OpenStack
- Comfortable with Scrum or other Agile methodologies
Mid-Level Software Engineer Job Description
- Work directly with clients to resolve their technical issues
- Be a leader on the team for issues involving your technical area of expertise
- Work closely with team members for debugging issues and determining root cause
- Work with core development team(s) to help explain issues and determine next actions
- Proactively communicate with clients and team members to keep them apprised of issue status and any commitment dates
- Mentor junior software engineers in your areas of expertise
- Identify and resolve problems found during testing prior to product release which may entail making a fix, working with partners to drive the resolution, or contributing to an Apache project
- Other systems and software engineering related duties as assigned by Management
- Candidate should possess excellent communications skills to participate in design and code reviews, have a thorough understanding of version control and software quality attributes, such as testability, portability and maintainability, and enjoy a self-driven and collaborative development approach
- Candidate should possess excellent communications skills and works well in a team environment
- BS/MS in Computer Science or Computer Engineering (or equivalent work experience)
- SQL/NoSQL experience (MongoDB, MYSQL, SQL Server, etc)
- Agile experience (SCRUM/Kanban/XP/Lean)
- Unit testing skills (JUnit, Jasmine, etc)
- Bachelor’s degree in technology discipline or equivalent software coding bootcamp experience (second career developers welcome)
- Three (3) to Five (5) years of real development experience on web projects – preferred
Mid-Level Software Engineer Job Description
- Identify refactoring ideas for legacy code
- Update user-facing product documentation for implemented features
- Aids software developers in defining requirements using DOORS
- Verifies that required software traceability is defined and performed
- Assists with formal test preparations such as traceability and test documentation, and with preparation of materials for customer reviews such as Test Readiness Reviews and Sell-offs
- Identifies process risks/opportunities and performs root cause corrective analysis (RCCA) as required
- Successful candidate assists code developers with peer reviews throughout the lifecycle, and must be familiar with traditional and agile software development methods, preferably with experience as a SCRUM Master
- Candidate will define roles/tasks, plan, schedule, and track Agile process implementation
- Candidate supports software reviews during Agile sprints
- Creation and collection of metrics for monitoring the health of systems
- Must show attention to detail, positive attitude, the ability to learn and to be challenged, and to take pride in quality, performance and timeliness
- Candidate must possess a Bachelor’s degree in Computer Science or related technical field or substantive training and experience in this area, , have at least 3 years of experience in developing software applications
- Bachelors degree in Computer Science, Engineering or related field or at least 10 years of job-related experience or Masters degree in Computer Science, Engineering or related field and at least 7 years of job-related experience
- Position may require the ability to investigate, troubleshoot, and design solutions to problems in operational software systems
- Position may require travel and requires the ability to obtain and maintain a Security Clearance
- 4+ years of software development experience demonstrating depth of technical understanding within ETL and Scripting technologies