Coding interview advice (not for a programming job)

Hi Everyone,
This may all be for nothing as I still have to get past a 45 minute technical telephone call first. But if I do the next stage is
60 minute coding test
This is something I do from home, but with someone monitoring via a remote tool they use. I can choose any language I want - and I will choose Python.
The job is a Cyber Security Engineer. They had said that they do not recruit people to fulfil one job, e.g. some members of their team program 90% of the time as that is what they're good at and enjoy. Others do it 10% and focus more on general security, user awareness, etc....
I am NOT a programmer. I am not good at Computer Science. I described myself to them as a hacker/coder/scripter and they said that's fine as others are the same. They did advise doing a practice question online and timing myself, just so I get used to that feeling.
Has anyone got any other advise about this?
I plan to do a bit of preparation over the weekend, maybe playing around with lists, dicts, some structures, a few simple programs of around 100 lines, just to get my brain working as I don't use Python all the time - just whenever I need to.
Thanks everyone,
This may all be for nothing as I still have to get past a 45 minute technical telephone call first. But if I do the next stage is
60 minute coding test
This is something I do from home, but with someone monitoring via a remote tool they use. I can choose any language I want - and I will choose Python.
The job is a Cyber Security Engineer. They had said that they do not recruit people to fulfil one job, e.g. some members of their team program 90% of the time as that is what they're good at and enjoy. Others do it 10% and focus more on general security, user awareness, etc....
I am NOT a programmer. I am not good at Computer Science. I described myself to them as a hacker/coder/scripter and they said that's fine as others are the same. They did advise doing a practice question online and timing myself, just so I get used to that feeling.
Has anyone got any other advise about this?
I plan to do a bit of preparation over the weekend, maybe playing around with lists, dicts, some structures, a few simple programs of around 100 lines, just to get my brain working as I don't use Python all the time - just whenever I need to.
Thanks everyone,
My Aims
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
Comments
Both interviews were fairly similar and my first one was a disaster. The way I had been practicing was to run the code over and over while I peck away seeing where my mistakes are and what work. When the interview came around there was no way to run the code and it threw me off big time and I stumbled around a bit. Second time I was much more prepared and did pretty well.
Some things that helped me:
Running through the challenges at https://www.codewars.com/ really helped getting me thinking of different ways to solve problems.
Trying to write out the code without running through the interpreter every step of the way.
Study the basics of different data types (lists, dictionaries, etc.).
Practice manipulating text files.
Regex matching was a part of both of my interviews.
Good luck!
Like you networker I am in the habit of typing 1-2 lines and running it. I must run it about 50 times in a few hours as I go along.
I did a practice script yesterday which was:
Write a script that takes in a list of 3 letter words and outputs anagrams of them as a list of lists
E.g. cat hat mat would output:
cat
atc
tac
hat
ath
etc......
I realised quite quickly that it's probably a good idea to spend 3-4 minutes with a piece of paper and plan what I'm going to do. That script took me about 2 hours but I wasn't really working very effectively.
Will do some more work on this and also use the site that was recommended - https://www.codewars.com/
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
Telephone interview went very well. Was actually quite easy. I'd be amazed (and gutted) if I don't get to the next stage as there were no major issues and it felt good.
Going to start preparing for coding interview. As stated I've been told it won't be a computer science style scenario as it's not a programming role. My maths is terrible so I hope there's nothing like that in there.
In preparation I'm going to practice writing code with:
- tuple, list, dict
- file writing and reading
- different loops
Maybe have some examples and related functions prepared.
Any other features or areas you guys think I should prepare for and practice?
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
From some practicing I think my main issue is that I am hacking the code together. E.g. I forget easily whether I should be using a dict or list, how to add things to it, .e.g update, append and sometimes how to play around with them.
Basic things. It's only because all the things I've coded before I've done in my own time. Doing it with a clock ticking is a whole new experience.
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
Not an option on the ones I've been on. They want you to type it all out in the shared screen. I think the most important part they want to see is your thought process working through the exercise.
You might even have an interviewer who isn't the most familiar w/ the programming language you choose to use.
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed
I do think it's a bit of luck in terms of what scenario I am given. If it's maths related then I am screwed as I'm terrible at it!
My biggest concern is being totally and completely confused to the point I just embarrass myself but not being able to write anything.
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
Had this interview last night, it was a total and utter disaster!
Firstly, I was very tired as I had a job interview the day before and was offered the job, and so was up all night wondering whether to take it or not! Anyway, the day of the interview I had a fairly long day at work which was unexpected.
Got home, tired and just not really in the mood at all.
The hardest part of the interview was that the person was on the phone the entire time. So there was a web browser and he pasted in some text to explain what function he wanted, and then he asked me to complete it. All the while he is on the phone listening and watching what I type.
I sometimes struggle with logic in programming, and do type stuff... try it ... adjust it... try it again ... change code .... try again - so I really do just butcher the code together. That obviously doesn't work when you have to just type out code in plain text whilst someone is watching you. Networker referred to this being an issue for him/her as well on one of the interviews they had.
I eventually did get one function working, then he wanted more functionality, and more. At the end I just had to say "I'm just not sure tbh... I'm struggling to work this out". Quite clear it wasn't a good interview.
Anyway, was an interesting experience and just not for me I guess!
Thanks for all your advice though.
2017: OSCP - COMPLETED
2018: CISSP - COMPLETED
2019: GIAC GNFA - Advanced Network Forensics & Threat Hunting - COMPLETED
GIAC GREM - Reverse Engineering of Malware - COMPLETED
2021: CCSP
2022: OSWE (hopefully)
Unfortunately, it might not be the BEST way to gauge a programmer's skill at attacking problems, but it's such a widespread and common method that the interviewer can assume you've done it before or at least were aware enough to prepare a bit and practice. It's important for people to be able to talk through technical problems when they are collaborating. If you plan on getting a role that is heavy in automation in the future, you should practice a bit on 1) how to approach programming tasks in the most efficient manner FOR YOU 2) how to talk through your process while you're doin it. It's also a great way to become more mindful of your assumptions, habits, strengths, and weaknesses.
Sounds like a great first experience since it exposed you to another form of interviews, even if you didn't pass this specific interview. Good luck on the job hunt and on your next coding interview!
Certs: RHCSA, LFCS: Ubuntu, CNCF CKA, CNCF CKAD | AWS Certified DevOps Engineer, AWS Solutions Architect Pro, AWS Certified Security Specialist, GCP Professional Cloud Architect
Learn: Terraform, Kubernetes, Prometheus & Golang | Improve: Docker, Python Programming
To-do | In Progress | Completed