Software Engineer 2 Job Description Template
Our company is looking for a Software Engineer 2 to join our team.
Responsibilities:
- Drive innovation through rapid prototyping and iterative development;
- Deliver solutions using the Agile methodologies followed in the organization;
- Experience in driving high availability across multiple applications;
- Drive complex design from scratch for enterprise scale applications;
- Ensure solution delivered adheres to the technological standards established in the organization;
- Maintain and enhance the existing architectural documentations and create the new one as needed;
- Define/document Best Practices in the technical areas assigned to;
- Administration of CI / CD using Jenkins / Bamboo;
- Participate in design and code reviews;
- Leverage other development teams, QA and customer support, and constructively weigh and integrate feedback;
- Problem-solving and thinking laterally as part of a team, or individually, to meet the needs of the project;
- Exercise considerable latitude in determining technical objectives, without appreciable direction;
- Identify and solve performance and scalability issues involving large data sets, mixed work-load;
- Complete ownership of his deliverables;
- Flexible enough to adjust to the change in work / technology / Team / etc.
Requirements:
- Good understanding and hands on experience with databases such as MySQL/ Oracle etc;
- Maintain and enhance the existing architectural documentations and create the new one as needed;
- Hands on experience in shell scripting, Perl/Python scripting;
- Exposure to cloud environment mandatory(Azure/AWS);
- Hands on experience in build tools such as maven, JFrog;
- Bachelor’s degree in computer science or related field, or equivalent experience;
- Java Spring, microservices knowledge is desirable;
- Practitioner of Agile (Scrum) methodology;
- Thorough understanding of SOA (Service Oriented Architecture) & RESTful web services implementation and architecture;
- Solid debugging skills;
- Communication skills;
- Hands -on file system development experience;
- Experience with creating applications that interact with network devices;
- Familiarity with automating continuous integration and deployments;
- Detail Oriented.