Technical Practical Exercise Senior Software Engineer
Objective
To assess the candidate s ability to lead engineering projects solve complex problems and demonstrate expertise in full stack Python and Go development as well as their ability to work with various technologies and methodologies
Exercise
1 System Design and Architecture 2 hours
o Task Design a high level architecture for a system that integrates Software Defined Networking SDN with Service Provisioning fault management inventory management and performance management
o Deliverables
A diagram of the system architecture
A brief explanation of the design choices including how different components interact and the rationale behind the selection of technologies
2 Full Stack Development 3 hours
o Task Develop a small web application using Python backend and a frontend framework of your choice The application should interact with a RESTful API and a gRPC service
o Deliverables
The source code for the web application
A README file with instructions on how to set up and run the application
A brief explanation of the design and implementation choices
3 Go Programming Task 2 hours
o Task Write a Go program that interacts with a JSON Protobuf API to retrieve and process data The program should include error handling and logging
o Deliverables
The source code for the Go program
A brief explanation of the design and implementation choices
4 Test Automation 2 hours
o Task Develop a framework for automating test cases for a system in production Use Python to create test scripts that validate the functionality of the system
o Deliverables
The test framework and scripts
A brief explanation of the test cases and how they ensure system reliability
5 Debugging and Optimization 1 5 hours
o Task Review a provided codebase and identify areas for debugging and optimization Automate routine tasks within the codebase
o Deliverables
Annotated code with comments on improvements
A summary report highlighting key issues and proposed solutions
6 Stakeholder Communication 1 hour
o Task Prepare a status update presentation for stakeholders summarizing the progress dependencies risks and next steps for the project
o Deliverables
A slide deck 5 7 slides covering the key points
A brief script or notes for the presentation
Evaluation Criteria
Technical Knowledge Understanding of SDN Service Provisioning fault management inventory management and performance management
Code Quality Ability to write clean efficient and maintainable code in Python and Go
Problem Solving Effectiveness in debugging optimizing code and automating tasks
Communication Clarity and effectiveness in communicating technical information to stakeholders
Practical Skills Hands on ability to design develop and test software solutions
Teamwork, quality of life, professional and personal development: values that Virtusa is proud to embody. When you join us, you join a team of 27,000 people globally that cares about your growth — one that seeks to provide you with exciting projects, opportunities and work with state of the art technologies throughout your career with us.
Great minds, great potential: it all comes together at Virtusa. We value collaboration and the team environment of our company, and seek to provide great minds with a dynamic place to nurture new ideas and foster excellence.
Virtusa is an Equal Opportunity Employer. All applicants will receive fair and impartial treatment without regard to race, color, religion, sex, national origin, ancestry, age, legally protected physical or mental disability, protected veteran status, status in the U.S. uniformed services, sexual orientation, gender identity or expression, marital status, genetic information or on any other basis which is protected under applicable federal, state or local law.
Applicants may be required to attend interviews in person or by video conference. In addition, candidates may be required to present their current state or government-issued ID during each interview. All candidates must be authorized to work in the USA.
Learn more
Have any questions?
To join our bright team of professionals, you can apply directly to our website under the Careers tab and search all open jobs. https://www.virtusa.com/careers
Yes, you can. Virtusa gives you the flexibility to apply for multiple open positions that excite you about your future and align to your experience and career goals.
Yes, you can. Virtusa is a global Company, and we serve our clients through our global delivery model.
Our dedicated recruitment team will review your online application and match it to all our open jobs. We update our open jobs on a daily basis and encourage you to check back often.
Our team of recruiters will review your application, relevant job experience, and skills to appropriately align it to our open jobs. From there, the recruitment team will contact the qualified candidate to start the interview process.
Want to explore the ways you can engineer your career in technology? Our thought leaders share key career insights for candidates from entry-level job seekers to senior technologists.
Check your downloads folder for files and implementation instructions.
Assets are now available in your profile for future editing and use.